美文网首页
SC02 并发&线程安全&锁与同步

SC02 并发&线程安全&锁与同步

作者: 小麻巧吃西瓜 | 来源:发表于2019-07-08 17:28 被阅读0次

并发


两种常见的并发类型:
共享内存消息传递


进程和线程:
进程是计算机上正在运行的程序的实例,与其他进程相互独立,并且在内存里有独立的存储空间。进程的存储空间不允许共享(特殊机制下可以),并在Java中使用标准的输入输出流进行信息传递。
线程是运行程序中的一个控制点,可以想象为正在运行的程序中的一个位置。在Java SE doc中也被称为轻量级进程。线程共享进程的内存。(特殊机制下也可以享受线程本地内存)线程进行信息传递要利用队列数据结构。


要在只有单或双处理器的计算机中现实多线程的操作,就要靠时间片来模拟并发操作,也就是处理器在不同线程间切换。


Java SE doc介绍了两种方法来定义一个线程

  1. Runnable接口
public class HelloRunnable implements Runnable {

    public void run() {
        System.out.println("Hello from a thread!");
    }

    public static void main(String args[]) {
        (new Thread(new HelloRunnable())).start();
    }

}
  1. 继承Thread
public class HelloThread extends Thread {

    public void run() {
        System.out.println("Hello from a thread!");
    }

    public static void main(String args[]) {
        (new HelloThread()).start();
    }

}

doc中说明了因为第一种方法还可以继承其他的类,而第二种则必须限制在为Thread的子类,所以第一种方法更为常用和通用。第二种在较为简单的程序中实际上也可用。
但课程中直接说:

Never use their second way (subclassing Thread).
Always implement the Runnableinterface and use the new Thread(..)constructor.

并介绍了另一种定义线程的方法,这种方法可以不为类命名:

new Thread(new Runnable() {
    public void run() {
        System.out.println("Hello from a thread!");
    }
}).start();

因为并发错误很难测试和定位,所以需要特别注意和避免,在下一节我们会涉及到如何避免。


线程安全

相关文章

  • SC02 并发&线程安全&锁与同步

    并发 两种常见的并发类型:共享内存 和消息传递。 进程和线程:进程是计算机上正在运行的程序的实例,与其他进程相互独...

  • 并发编程实战学习

    目录 线程风险 线程风险预防 线程安全设计 并发工具 显示锁 构建自定义的同步工具 java内存模型 并发编程 线...

  • 第13章 线程安全与锁优化

    第13章线程安全与锁优化 13.2线程安全 13.2.2线程安全的实现方法 1.互斥同步 互斥同步(Mutual ...

  • 第一章

    Java并发编程与高并发解决方案知识点:线程安全;线程封闭;线程调度;同步容器;并发容器;AQS;J.UC 高并发...

  • 多线程

    GCD NSOperation NSThread 多线程与锁 一、GCD 同步、异步 和 串行、并发 dispat...

  • 理解java集合

    容器的同步控制与只读设置 一、同步控制:多线程并发访问集合的线程安全常用的容器ArrayList、HashSet、...

  • 网络之美

    线程安全问题----互斥锁和递归锁 互斥锁线程同步能够保证多个线程安全访问竞争资源,最简单的同步机制就是引入互斥锁...

  • iOS 并发,锁,线程同步【二】Operation

    在之前的一篇文章中【iOS 并发,锁,线程同步【一】GCD】,我们讨论了一下 GCD 的并发,锁和线程同步的问题,...

  • python之多线程与多进程入门

    python之多线程与多进程 关键词: GIL锁,IO繁忙,线程安全,线程同步,进程池,进程通信,队列 GIL锁;...

  • Synchronized

    1.synchronized同步线程安全锁

网友评论

      本文标题:SC02 并发&线程安全&锁与同步

      本文链接:https://www.haomeiwen.com/subject/nluahctx.html