A股上市公司传智教育(股票代码 003032)旗下技术交流社区北京昌平校区

 找回密码
 加入黑马

QQ登录

只需一步,快速开始

© 黑马-zhangping 中级黑马   /  2012-10-19 20:37  /  1142 人查看  /  2 人回复  /   0 人收藏 转载请遵从CC协议 禁止商业使用本文

下面是我总结的进程的一些知识和例子,供大家分享
进程基本知识:
1、一个servlet有一个进程,多个线程(原因:1个tomcat一个进程)
2、来一个请求,开一个线程
3、java lang包中的类不用导入
4、线程:Source—Override/implement Methods
5、static修饰的变量private static int z=10):
多个线程共享一个资源(否则,只有对象一个有值,其他对象都为null)
6、public synchronized void run(){  }
线程同步(一个线程运行,另一个线程进不来)
7、线程常用的几种方法:
Thread.start()
Thread.run()
Thread.sleep()    //毫秒为单位 1s=1000ms
Thread.stop()
8、双核CPU不能用synchronized 实现线程同步,单核可以
----------------------------------
1、线程的实现方式:
法1:1)类继承extends Thread
      2)重写run()
             3)封装一个对象,调用start()方法
特点:不能继承多个类,但简单
--------------------------
法2:1)实现implements Runnable
      2)重写run()
      3)伪装一个对象
  T2 t =new T2();
  Thread th=new Thread(t);
  th.start();
特点:能实现多个接口,相对复杂些
public class T1 extends Thread{
private static int z = 10;                                     //用 static 使多个线程共享一份资源
public synchronized void run() {                               //用 synchronized 实现线程同步,一个线程正在运行,另一个线程无法进入(针对单核CPU而言)               
     for(z=0;z<10;z++){
      System.out.println(this.getName()+":"+z);              //用 this.getName() 获取线程名称 
     }
}
public static void main(String[] args) {
     T1 t = new T1();
     t.start();
  
     T1 t1 = new T1();
     t1.start();
  
}
}
---------------------------------
public class T2 implements Runnable{
private static int  i =  0;
public  void run() {
  while(true){
   System.out.println(Thread.currentThread().getName()+":"+i++);        //用 Thread.currentThread().getName()  获取线程名称 
   try {
    Thread.sleep(500);
   } catch (InterruptedException e) {   
    e.printStackTrace();
   }
  }
}

public static void main(String[] args) {
  T2 t = new T2();                              //伪装一个对象
  Thread th = new Thread(t);
  th.start();                                   //用start启动一个线程,不能用run(),否则会将run()当做一个普通的方法老调用
  
  T2 t2 = new T2();
  Thread th2 = new Thread(t2);
  th2.start();
}
}

2 个回复

倒序浏览
估计你发错地方了。:(
回复 使用道具 举报
。。。{:soso_e100:},什么情况,入学测试怎么都发成这个了
回复 使用道具 举报
您需要登录后才可以回帖 登录 | 加入黑马