您好今天在采访中他们问了一个多线程问题,该问题创建了一个方法,其中有一个方法getDBConnect(),以便最多3个线程可以同时访问它。如果第4个thraed尝试访问getDBConnect()方法,则第4个线程将进入等待状态,如果3个线程中的任何一个释放方法getDBConnect(),则第4个线程将使用简单线程或执行程序线程访问getDBConnect()方法。
请帮助我了解如何制作多线程程序,以便满足上述标准。
答案 0 :(得分:0)
我不打算为你编写代码。但我可以暗示这个问题是关于什么的。有一个非常有趣的多线程同步原语叫做Semaphore。 JDK包含详细说明和使用示例https://docs.oracle.com/javase/7/docs/api/java/util/concurrent/Semaphore.html