Flagsmith / flagsmith-dotnet-client

.NET Standard Client for Flagsmith. Ship features with confidence using feature flags and remote config. Host yourself or use our hosted version at https://www.flagsmith.com/
https://www.flagsmith.com/
BSD 3-Clause "New" or "Revised" License
19 stars 12 forks source link

chore: Implement multi-threading support for analytics Processor #95

Closed novakzaballa closed 2 months ago

novakzaballa commented 3 months ago

Implement support for multi-threading processing in the AnalyticsProcessor class.

Also, implements unit tests replicating potential issues. The issues show themselves only with a huge number of threads running concurrently, and at a certain number it is possible to reproduce them systematically, while that number could depend on the machine resources this has been tested on a MAC Book Pro M2 Processor with 16GB and on a PC with Corei7 and 48GB of RAM.

Please refer to this issue https://github.com/Flagsmith/flagsmith-dotnet-client/issues/88 for more context.

novakzaballa commented 3 months ago

Added one extra comment, and I think one was missed from the previous review.

Thanks! Both are answered now.