java 线程

来源:互联网 发布:js加密 有用么 编辑:程序博客网 时间:2024/05/18 15:28

一、进程

        1、程序(任务)的执行过程(动态性

        2、持有资源(共享内容,共享文件)和线程。(载体)    //资源——内存

二、线程

        1、系统中最小的执行单元

        2、同一进程中有多个线程

        3、线程共享进程的资源

三、Thread常用方法

        1、线程的创建

                                 Thread()

                                 Thread(String name)

                                 Thread(Runnable target)

                                 Thread(Runnable target , String name)

        2、线程的方法

                                 void start()  //启动线程

                                 static void sleep(long millis)   //线程休眠

                                 static void sleep(long millis , int nanos)     //线程休眠

                                 void join()     //使其他线程等待当前线程终止

                                 void join(long millis)     //使其他线程等待当前线程终止

                                 void join(long millis , int nanos)     //使其他线程等待当前线程终止

                                 static void yield()      //当前运行线程释放处理器资源

        3、获取线程引用:static Thread currentThread()      //返回当前运行的线程引用

四、争用条件 Race condition

        多线程同时共享访问同一数据(内存区域)时,每个线程都尝试操作该数据,从而导致数据被破坏(corrupted)

五、线程的交互:互斥与同步

            互斥的实现:synchronized(intrinsic lock)

            同步的实现:wait()/notify()/notifyAll()


0 0