いつも的確な回答に助けられていますm( __ __ )m
以下のようなメソッドがあるとします。
function test()
{
処理1: データベースから値を取得
処理2: 処理1 で取得した値に +1 する
処理3: 処理2 の結果をデータベースに書き込む
}
【質問】
関数 test がクライアント A と B の2人からほぼ同時にアクセスされた時、以下のような事が起きてしまうと思います。
・ A が 処理1 を実行
・ A が 処理2 を実行
・ B が 処理1 を実行
・ A が 処理3 を実行
・ B が 処理2 を実行
・ B が 処理3 を実行
当然データベースにある値は期待通りの値ではないと思います。
期待する動きとしては、A が関数 test の全ての処理を抜けるまで B は入り口で待機させるというようなことを想像しているのですが、
こういった場合、どのように排他制御したら良いのでしょうか?
私は C# で排他制御を実装した経験があるのですが、
C# では同期オブジェクトを用意して lock を使ったり、 ManualResetEvent などを用いることで排他制御が可能でした。
PHP でそれらに匹敵するようなものは存在するのでしょうか?
お探しのQ&Aが見つからない時は、教えて!gooで質問しましょう!
似たような質問が見つかりました
- Visual Basic(VBA) ExcelからAccessのテーブルに書き込む時に時間がかかる 1 2022/10/14 20:38
- Java javaの質問です 次の機能を有するメソッド4つを自クラスに作成し、実装したいです 【機能】 足し算 1 2022/06/15 17:49
- Excel(エクセル) Indirect関数について、Formulatextで抽出した数式を参照したい。 1 2022/12/15 11:16
- Java java 飾子を付けること(public static・・・) ・コンソールへの出力処理はmainメ 2 2022/06/16 19:34
- Visual Basic(VBA) この関数と同じ処理をVBAで行うにはどうしたら良いでしょうか? これは、1列の中に同じ値が複数存在し 21 2022/07/07 07:48
- その他(データベース) 業務用のデータベースサーバーの選び方について 4 2022/11/22 10:22
- Java java 次の機能を有するメソッドを自クラスに作成し、実装したいです。 機能 名前判定機能 →名前が 3 2022/06/16 16:08
- Excel(エクセル) マクロで謎の現象が起きていて困ってます。 エクセルで作ったボタンを押すとマクロが動いて処理をしてくれ 3 2023/06/22 17:28
- システム CPUの問題について 2 2022/07/09 12:04
- PHP アップロード画像数でCSSを分けることに成功したのですが、画像の横に文字を並べることが出来ません。 3 2023/07/28 17:16
関連するカテゴリからQ&Aを探す
おすすめ情報
デイリーランキングこのカテゴリの人気デイリーQ&Aランキング
-
PHPを用いてPOSTし、リダイレク...
-
呼び出し元のURLを知りたいのです
-
読み込み中に「Now Loading」を...
-
ブラウザ閉じたらサーバー処理...
-
携帯でも表示されるカウントダウン
-
HTMLでDBからデータを表形式で...
-
テーブルで作った表をボタン操...
-
DirectXとOpenGLはどちらが動作...
-
チャットを作る
-
【JavaScript】confirmのボタン...
-
OVERLAPPED構造体が分かりませ...
-
読み取り専用が外れない
-
Ajaxでpostした内容のresponse...
-
Response.Write(変数)
-
saved from url=(0013)abou
-
Flickity で画像にリンクを貼る...
-
Rを使う際、データを読み込む時...
-
visualwave(smalltalk言語ソフ...
-
jQueryの$.postの戻り値による...
-
【Ajax】改行を含めたデータを...
マンスリーランキングこのカテゴリの人気マンスリーQ&Aランキング
-
ASP.NET(VB)VBソースからJavas...
-
jQueryのAjaxで通信の途中結果...
-
php ob_flushが全く動作しない
-
sleepの負荷
-
読み込み中に「Now Loading」を...
-
cakephp2とsmartyの表示が遅い
-
include 再読み込み
-
ブラウザ閉じたらサーバー処理...
-
PHPでフォームの自動入力できま...
-
ブラウザを閉じた瞬間にログアウト
-
呼び出し元のURLを知りたいのです
-
PHPで一定時間が経過すると処理...
-
JSTLを利用してJavascriptの結...
-
PHPのプログラムが同時に呼び出...
-
PHPで タイピング練習サイトを...
-
PHPでオンライン将棋ゲーム
-
PHPでpostされた値をクライアン...
-
Node.jsについて
-
掲示板の荒らし対策
-
外部プログラム実行時の戻り値
おすすめ情報