繁体   English   中英

设计问题-Servlet中异步请求的线程安全

[英]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.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM