Sphereserver / Source

http://spherecommunity.net
Apache License 2.0
108 stars 58 forks source link

Avoiding dinamically reading event list while processing #266

Open DracoScript opened 2 years ago

DracoScript commented 2 years ago

Using the current method of checking changes on events won't work properly if an event is added at the same time as another is removed, because the list size stays the same and an event may be skipped. Probably my solution was not the most optimized, but it's how I made it work.

To be more specific about the issue I faced, I had 5 events to be processed and the 3rd one removed itself and added another one, keeping the list with 5 elements but skipping the 4th element on the original list as it became the 3rd and the index jumped to the 4th without knowing the 3rd was replaced by an unprocessed event.