Java 如何基于线程ID锁定线程?
我有3个类,由3个线程共享。每个线程将访问一个同步的公共列表。但问题是,我只想基于ID锁定一个线程,如果前一个线程完成,则取消锁定下一个线程 范例 我有线程1,线程2,线程3,它们将同时访问一个列表。我需要根据其id锁定线程2和线程3,直到线程1完成。让他们一个一个地被处决Java 如何基于线程ID锁定线程?,java,multithreading,Java,Multithreading,我有3个类,由3个线程共享。每个线程将访问一个同步的公共列表。但问题是,我只想基于ID锁定一个线程,如果前一个线程完成,则取消锁定下一个线程 范例 我有线程1,线程2,线程3,它们将同时访问一个列表。我需要根据其id锁定线程2和线程3,直到线程1完成。让他们一个一个地被处决 我正在使用JAVA编程来实现这一点。请帮助我找到一种方法来实现这一点。可以通过ExecutorService.invokeAll方法完成。我的主要目标是保持订单o/p 请检查以下URL: 我希望它能帮助别人。谢谢大家。可以关
我正在使用JAVA编程来实现这一点。请帮助我找到一种方法来实现这一点。可以通过ExecutorService.invokeAll方法完成。我的主要目标是保持订单o/p 请检查以下URL:
我希望它能帮助别人。谢谢大家。可以关闭此问题。因此,如果线程1和线程2同时访问列表,就不会有问题了?顺便说一句,什么编程语言?不。我想锁定其他线程,并根据其id只执行一个线程。一旦当前线程完成,它必须解锁下一个线程,然后让它执行。当多线程与特定列表交互时,需要执行此操作。如果您在列表上进行同步,它实际上应该执行您想要的操作,则只有在另一个线程完成执行后,线程才会访问此代码块。如果您希望线程按特定顺序执行操作,则不应使用多个线程。线程并发运行,这比无序运行更远离有序运行……Re:我需要根据其id锁定t2和t3,直到t1完成。让他们一个一个地被处决。为什么ID很重要?一个简单的同步块将确保线程只能逐个执行其内容。