Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
here's my notes:
goal: non-network and network happen in parallel
non-network puts stuff in eventsQueue and peopleQueue
flush takes stuff out of eventsQueue and peopleQueue
need to lock on adding, removing, reading
need to lock on saving to disk (reading actually only happens on init so should be okay though maybe should do it anyway)
as it stands flush will flush whatever was added before. naively changing makes it so it will continue flushing as long as stuff keeps getting added in. should read all stuff at start to not have endless flushing
reset needs to wait on flushes as well
flush and other network queue stuff should be dispatched from the serial queue so the pattern of track -> flush always has that track in the flush instead of only sometimes… so everything on the network queue is dispatched through the serial queue…