cyclicbarrier && semaphore