simple semaphore usage