Statelessservlet という名前のサーブレットがあり、毎回新しい stafful オブジェクトをインスタンス化します。このステートフル オブジェクトに同期を提供する必要がありますか?
コードは次のとおりです。
public class StatelessServlet extends HttpServlet {
@Override
protected void service(HttpServletRequest req, HttpServletResponse resp) throws ServletException, IOException {
StatefulObject stObj = new StatefulObject(Integer.parseInt(req.getParameter("id")));
stObj.performSomeStatefulOperation();
...
}
}
class StatefulObject {
private int id;
public StatefulObject(int id) {
this.id = id;
}
//Is synchronized really needed here???
public synchronized void performSomeStatefulOperation() {
id++;
}
}
Brian Grotz JCIP によると、各 stafful オブジェクトは同期する必要があるため、理想的にはこのメソッドを同期する必要がありますか?