You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Right now, chunks are only submitted when the chunk is full, or systrace_deinit is called. This is bad for a few reasons.
Firstly: it does not handle abrupt termination
Secondly: it does not handle quiet threads (that only report 1-2 events)
Thirdly: it does not handle threads that report a lot, but quit at some point
I think we need to change the way chunk allocation works to fix this, but changing that may fix a few other problems at the same time.
Suggested workflow:
Client asks traced for a chunk name
traced hands it one, records it as in use
Client continues to notify traced of full chunks (but we now also use this to get a new chunk allocated at the same time
Every N (and at startup):
traced looks over open chunks
If chunk PID is dead, or chunk TID is dead, process (and free) chunk
Note that if a chunk is kept open by a thread, but the thread is not reporting much, this is still a problem (until termination). I don't see this as being a problem, but if it turns out to be one, we can always look at a solution for that. I'm a little wary about trying to handle that case now, because it could likely get ugly fast.
The text was updated successfully, but these errors were encountered:
Right now, chunks are only submitted when the chunk is full, or systrace_deinit is called. This is bad for a few reasons.
Firstly: it does not handle abrupt termination
Secondly: it does not handle quiet threads (that only report 1-2 events)
Thirdly: it does not handle threads that report a lot, but quit at some point
I think we need to change the way chunk allocation works to fix this, but changing that may fix a few other problems at the same time.
Suggested workflow:
Every N (and at startup):
Note that if a chunk is kept open by a thread, but the thread is not reporting much, this is still a problem (until termination). I don't see this as being a problem, but if it turns out to be one, we can always look at a solution for that. I'm a little wary about trying to handle that case now, because it could likely get ugly fast.
The text was updated successfully, but these errors were encountered: