気ままなタンス*プログラミングなどのノートブック

プログラミングやRPGツクール、DTM、VOCALOIDについてのんびり書きます。

【SC勉強】レースコンディション【いつもながら自分用】

競合状態のこと。

複数のスレッドが同時にあるインスタンス変数に代入することによって、
想定外の値を利用してしまう。

以下プログラム(だいたいこんな感じ 動作確認してない)

import java.io.IOException;
import javax.servlet.*;
import javax.servlet.http.*;

class TestServlet extends HttpServlet {
    String hoge;
    protected void doGet(HttpServletRequest request, HttpServletResponse response) {
     // 他のスレッドで受け取ったuser_idが格納される恐れあり
      hoge = request.getParameter("user_id");
      System.out.println(hoge);
    }

    protected void doPost(HttpServletRequest request, HttpServletResponse response) {
    }
}