Pergunta de entrevista da empresa Peraso

How to use lock to implement a semaphore?