楼主看以下代码
- public class ThreadTest {
- public static void main(String[] args) {
-
- Test t = new Test();
- Thread t1 = new Thread(t);
- t1.start();
- t.method();
- }
- }
- class Test implements Runnable{
- public synchronized void run(){
- for(int i=0;i<1000;i++)
- {
- System.out.println("线程已锁正在运行:"+i);
- }
- }
- public void method(){
- for(int i=0;i<1000;i++)
- {
- System.out.println("----线程未锁正在运行-----"+i);
- }
- }
- }
复制代码 当一个方法加锁后,另一个方法没有加锁,运行的时候,加锁的和没有加锁的会交替运行,也就是另一个线程也可以运行此对象其他方法。 |