Download Thread_project/Thread_module/src/Thread_safe_package/MyThread3.java from zxy0307/Java: direct link, hf CLI and curl.
- Browser
- Download file 946 Bytes
-
https://huggingface.co/zxy0307/Java/resolve/main/Thread_project/Thread_module/src/Thread_safe_package/MyThread3.java
- Command line
-
hf download hf://zxy0307/Java/Thread_project/Thread_module/src/Thread_safe_package/MyThread3.java
-
curl -L -o MyThread3.java https://huggingface.co/zxy0307/Java/resolve/main/Thread_project/Thread_module/src/Thread_safe_package/MyThread3.java
946 Bytes
| package Thread_safe_package; | |
| public class MyThread3 extends Thread { | |
| static Object objA = new Object(); | |
| static Object objB = new Object(); | |
| public void run() { | |
| //1、循环 | |
| while (true) { | |
| if ("线程A".equals(getName())) { | |
| synchronized (objA){ | |
| System.out.println("线程A拿到了A锁,准备拿B锁"); | |
| synchronized (objB){ | |
| System.out.println("线程A拿到了B锁,顺利执行完一轮"); | |
| } | |
| } | |
| } else if ("线程B".equals(getName())) { | |
| synchronized (objB){ | |
| System.out.println("线程B拿到了B锁,准备拿A锁"); | |
| synchronized (objA){ | |
| System.out.println("线程B拿到了A锁,顺利执行完一轮"); | |
| } | |
| } | |
| } | |
| } | |
| } | |
| } | |