java使线程等待另一个线程的执行
在JavaZK应用程序的ViewModel中,我有多个线程执行一个特定的函数。任何线程第一次执行该函数都需要很长时间,但在执行一次后,当其他线程执行该函数时,它会立即返回,因为此时它已在缓存中检索到值。但是第一次应该只由一个线程执行,就像多个线程执行该函数一样,它不会返回到其中任何一个线程,因为当每个线程调用相同的函数时,缓存仍然是空的,因此,所有线程的返回时间相加。 因此,我如何让其他线程等待第一个线程完成,因为线程属于不同的对象,因此同步方法在这里不起作用。这里可以使用一个变量来与第一个线程已经完成的其他线程通信吗?请注意,所有线程都属于同一类的不同对象,即ViewModel,它不能扩展thread类或实现Runnable,因为它是ZK框架类。 可以提出任何解决方案
# 1 楼答案
比如: