검사와 지정(test-and-set) 명령어는 동시성을 제어하기 위한 동기화 명령어 중 하나로서, 하드웨어의 도움을 받아 수행된다. 이것을 활용하면 상호 배제 등을 편리하게 구현할 수 있다.
function TestAndSet(boolean lock) { boolean initial = lock lock = true return initial }