생산자

소비자





이렇게 만들어서 쓰는데요 소비자 스레드가 하나면 잘 동작을 하거든요,,,,


근데 소비자가 여러개가 되면 소비자들끼리 막 경쟁하는거 같은데


제 생각엔 소비자에서 lock 걸었다가 wait하면서 lock 잠깐 반납하면 다른 스레드가 그 lock 가져가서 뭐가 문제가 생기는거 같은데


혹시 소비자가 wait 했을때 생성자가 무조건 lock 가져가게 하는 방법이 없나요?


아니면 소비자 스레드들마다 컨디션 변수를 다 다르게 해줘야하나요?