update semaphore =not working