📄 sample16_10.java
字号:
package wyf.jc;
//自定义的线程类
class MyThread extends Thread
{
//该引用为资源对象
private Object resource;
//无参构造器
public MyThread()
{}
//有参构造器
public MyThread(Object resource,String name)
{
//对线程进行初始化
this.resource=resource;
this.setName(name);
}
public void run()
{
//同步语句块
synchronized(resource)
{
System.out.println(this.getName()
+"线程访问了资源!!!");
System.out.println(this.getName()
+"线程带着锁睡觉去了!!!");
try
{
Thread.sleep(1000);
}
catch(Exception e)
{
e.printStackTrace();
}
System.out.println(this.getName()
+"线程带着锁睡醒后释放了锁!!!");
}
}
}
//主类
public class Sample16_10
{
public static void main(String[] args)
{
//创建资源对象
Object resource=new Object();
//创建2个线程
MyThread mt1=new MyThread(resource,"MT1");
MyThread mt2=new MyThread(resource,"MT2");
//启动这2个线程
mt1.start();
mt2.start();
}
}
⌨️ 快捷键说明
复制代码
Ctrl + C
搜索代码
Ctrl + F
全屏模式
F11
切换主题
Ctrl + Shift + D
显示快捷键
?
增大字号
Ctrl + =
减小字号
Ctrl + -