
SwooleTimer::exists 함수는 타이머 ID를 삭제한 후에도 true를 반환하는 이유는, 삭제된 타이머 ID는 스레드에서 삭제된 타이머 ID가 아닌, 스레드에서 관리하는 타이머 ID의 목록에서 삭제된 것입니다.
즉, 삭제된 타이머 ID는 스레드에서 관리하는 타이머 ID의 목록에서 삭제되지만, 스레드에서 관리하는 타이머 ID의 목록에서 삭제된 타이머 ID는 스레드에서 관리하는 타이머 ID의 목록에 존재하지 않기 때문에, 스레드에서 관리하는 타이머 ID의 목록에 존재하는 타이머 ID는 스레드에서 관리하는 타이머 ID의 목록에 존재하는 타이머 ID이므로, true를 반환하는 것입니다.
만약, 스레드에서 관리하는 타이머 ID의 목록에 존재하는 타이머 ID가 삭제된 타이머 ID인 경우, 스레드에서 관리하는 타이머 ID의 목록에서 삭제된 타이머 ID를 삭제한 후, exists 함수를 호출하면 false를 반환하는 것입니다.
2025-04-13 18:13