[英]Design issue - thread safety of Async requests in servlets
Servlet 3.0 Spec的2.3.3.4
节内容如下:
除了startAsync和complete方法之外,不能保证请求和响应对象的实现是线程安全的。 这意味着它们只能在请求处理线程的范围内使用,或者应用程序必须确保对请求和响应对象的访问是线程安全的。
我正在使用码头,我的问题是-
我的要求是在正在处理请求的异步线程中读取请求的ServletInputStream。 现在,如果我要阅读http标头等,这将很容易。 在开始异步并传递到线程之前,我可以阅读它们。
但是,在我的情况下,我需要使用ServletInputStream,因为在传递到处理线程之前,我不希望缓冲内容。
有什么办法可以解决这个问题? 或者,如果我只是将ServletInputStream的引用传递给处理线程,那还好吗?
只要确保在任何一次仅从ServletInputStream读取一个线程,就可以了。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.