Hello,
When I run the following code the first HTTP request is served after 60 seconds, which is what I expect, however subsequent requests emitted during this 60 seconds time frame will block as well and only be served when the first request is completed.
[ServiceHandler(ServiceHandlerBehavior.Concurrent)]
public void HttpGetHandler(HttpGet httpGet)
{
SpawnIterator<HttpGet>(httpGet, Handler);
}
bool _wait = true;
IEnumerator<ITask> Handler(HttpGet httpGet)
{
if (_wait)
{
_wait = false;
yield return Timeout(60000);
}
httpGet.ResponsePort.Post(new HttpResponseType(HttpStatusCode.OK, _state));
yield break;
}
Can you confirm this behavior is intended? If yes:
- what is the reason?
- how does it impact other HTTP and DSS handlers in the same service?
- how does it impact the overall behavior of the DSS node?
Thanks.