标签: java multithreading queue
我有一个制作人和多个接收器。所有产品都会添加到队列中,以后可以将它们带走。问题是,我是否需要在每次想要将对象添加到队列时进行检查(如果它尚未使用),假设我使用信号量来阻止任何接收器在它空时访问它?
答案 0 :(得分:1)
如果您有多个线程可能同时使用同一个对象,是的,您将使用锁或信号量来确保一次只有一个线程对该对象起作用。
根据您使用的语言,我相信有些语言已经为您实现了。您可以创建线程安全的数据结构对象,并且已经为您处理了锁定语义。