函式名稱:Swoole\Atomic::sub()
適用版本:Swoole 4.2.0及以上版本
函式說明: Swoole\Atomic::sub() 方法用於對原子計數器進行遞減操作。原子計數器是一種執行緒安全的計數器,可以在多個程序或者執行緒中進行操作而不會產生競爭條件。
函式原型: public Swoole\Atomic::sub(int $sub_value = 1): int
引數說明:
- $sub_value(可選):要減去的值,預設為1。必須是一個整數。
返回值:
- 函式執行成功時,返回減去指定值後的原子計數器的當前值。
示例程式碼:
$atomic = new Swoole\Atomic(10); // 建立一個原子計數器,初始值為10
echo "當前計數器的值:" . $atomic->sub() . PHP_EOL; // 將計數器減去預設值1並輸出結果
$sub_value = 3;
echo "將計數器減去{$sub_value}後的值:" . $atomic->sub($sub_value) . PHP_EOL; // 將計數器減去指定值並輸出結果
輸出結果:
當前計數器的值:9
將計數器減去3後的值:6
注意事項:
- Swoole\Atomic::sub() 方法只能用於減法操作,如果需要進行加法操作,請使用 Swoole\Atomic::add() 方法。
- 原子計數器的值可以為負數,表示遞減到負無窮大。
- 在多個程序或者執行緒中同時對原子計數器進行操作時,Swoole 會自動處理並保證操作的原子性。