static Thread t1=null,t2=null;
public static void main(String[] args)throws Exception {
char[] aI = "1234567".toCharArray();
char[] aC = "ABCDEFG".toCharArray();
t1=new Thread(()->{
for (char c : aI) {
System.out.println(c);
LockSupport.unpark(t2);
LockSupport.park();
}
},"t1");
t2=new Thread(()->{
for (char c : aC) {
LockSupport.park();
System.out.println(c);
LockSupport.unpark(t1);
}
},"t2");
t1.start();
t2.start();
}
用两个线程,一个输出字母,一个输出数字,交替输出:1A2B3C4D5E.....26Z
Java线程同步案例
本文通过一个具体的Java代码示例,展示了如何使用LockSupport进行线程间的同步操作。两个线程交替打印字符数组,实现精确的线程切换和数据同步。

被折叠的 条评论
为什么被折叠?



