JAVA 之"线程"

1、进程与线程:

     《1》什么是进程:是指运行中的应用程序,每一个进程都有自己独立的内存空间,

          一个应用程序可以同时启动多个进程,(静态)比如(IE,JVM)
     《2》什么是线程:是指进程中的一个执行流程,有时有称之为执行情景,

          一个进程有多个线程组成(动态)

     《3》进程与线程的主要区别:
          每个进程都需要操作系统为其分配独立的内存地址空间,

          而同一进程中的所有线程在同一块地址空间中工作,

          这些线程可以共享同 一块内存和系统资源


2、线程的创建(两种方式):

     《1》继承Thread类(一般在不继承其他类的情况下)
     《2》实现Runnable接口(一般在继承其他类的情况下)
    
3、线程创建的步骤:

     《1》第一种
            (1)自定义线程类继承Thread类;
            (2)覆盖Thread类中的run()方法;
            (3)创建该线程类对象;
            (4)调用该线程类对象中的start()方法启动线程。
     《2》第二种

            (1)自定义线程类实现Runnable接口;
            (2)覆盖Runnable接口中的run()方法;
            (3)创建该线程类对象;

            (4)创建Thread对象,构造参数为该线程类对象;

            (5)调用Thread对象中的start()方法启动线程。


4、线程的实际应用以及注意事项:
     《1》主线程与用户自定义线程并发执行;
     《2》多个线程共享同一个对象的实例变量;
     《3》不要随便覆盖Thread类中的start()方法
              如果一定要覆盖start()方法,那么就首先调用super.start()方法;
     《4》一个线程只能被启动一次;

     《5》一般涉及操作同一个数据的程序,不使用多线程并发执行,

              以保证数据的安全性。

5、两个线程交互执行:

     《1》两个线程需要有同一个标记锁;

     《2》两个线程中的代码要用 synchronized 修饰。   
  

6、实例代码:

    利用两个线程的交互执行打印 A 1 2 B 3 4 C 5 6……

   

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值