Description of changes: Address an issue where parallel service calls within the same server request could cause the application to crash due to mutation of SmokeInwardsRequestContext's internal mutable state from multiple threads. The new implementations in SmokeInwardsRequestContext use a dispatch queue to serialise access to the class' mutable state. The existing methods have been marked as deprecated due to the likelihood that they will not be thread safe.
Issue #, if available:
Description of changes: Address an issue where parallel service calls within the same server request could cause the application to crash due to mutation of
SmokeInwardsRequestContext
's internal mutable state from multiple threads. The new implementations inSmokeInwardsRequestContext
use a dispatch queue to serialise access to the class' mutable state. The existing methods have been marked as deprecated due to the likelihood that they will not be thread safe.This is a follow up to https://github.com/amzn/smoke-http/pull/107.
By submitting this pull request, I confirm that my contribution is made under the terms of the Apache 2.0 license.