
SwooleAtomic::cmpset 함수는 원자성으로 변수를 업데이트하는 데 사용됩니다. 이 함수의 cmpset 메소드는 특정 조건을 만족하는 경우에만 변수의 값을 업데이트하고, 그렇지 않은 경우에는 원래 값을 유지합니다.
업데이트 조건을 지정하는 순서는 다음과 같습니다.
- 첫 번째 인자는 현재 변수의 값을 저장한 변수입니다.
- 두 번째 인자는 업데이트하려는 새로운 변수의 값을 저장한 변수입니다.
- 세 번째 인자는 업데이트하려는 변수의 원래 값을 저장한 변수입니다.
- 네 번째 인자는 업데이트하려는 변수의 원래 값과 새로운 값이 같은지 비교하여 true 또는 false를 반환하는 비교 함수입니다.
업데이트하려는 변수의 새로운 값을 저장한 변수는 첫 번째 인자와 두 번째 인자 사이에 위치하지 않습니다. 하지만, 두 번째 인자와 네 번째 인자는 업데이트하려는 변수의 새로운 값을 저장합니다. 두 번째 인자는 업데이트하려는 변수의 새로운 값을 저장한 변수로, 네 번째 인자는 업데이트하려는 변수의 새로운 값을 저장한 변수입니다.
따라서, 업데이트하려는 변수의 새로운 값을 저장한 변수는 두 번째 인자와 네 번째 인자 사이에 위치합니다.
2025-07-23 13:25