java并发的学习从去年就已经中断了,之前只对于java并发的一些基础进行了一些巩固,对于这个硬技能不管是对于面试还是对于日常的实际开发来说都非常之重要,所以接下来给自己重新定一个新目标,准备重拾它一步一个脚印从易到难彻底的将Java并发所涉及的方方面面进行一个深入的学习,向着“精通”的程度来努力,当然要想达到此目标肯定得把自己扒一层皮,不可能这么轻松的,所以贵在坚持!

Thread:

"万丈高楼平地起",为了达到“精通”的目标,肯定还得从基础一点点开始,虽说是比较枯燥,但是这是让自己持续向着这个目标不断迈进的必经之路,另外可能有些概念早已经知道了,但是为了系统还是得从头开始一点点学习,因为这次的目标就是奔着精通去的,所以,对于Java并发来说肯定就涉及到线程的东东,而谈到Java线程肯定就会想到Thread类,所以就从它的了解开启系统的学习,而为了更加精准的来了解它,直接对它官方的javadoc进行了解,这样是最直接最权威的,所以咱们先来打开它的源码,这里是以"jdk1.8.0_92"为准进行解读的,如下:

然后打开该类的文档窗口:

接下来再来大致了解一下它的成员:

接下来就是几个重载的构造方法:

其中示例中我们看到会有一个带Runnable接口的构造方法,大致瞅一下它的实现:

接着看一下init()方法:

继续再看其它方法:

该方法是很重要的,所以也来读一下它的说明:

接下来再来看一下它的run()方法:

由于也很重要,所以,也来通读一下它的说明:

其中target则就是Runnable对象,如下:

Runnable:

对于Thread类它是实现了Runnable这个接口的,如下:

所以接下来再来读一下Runnable的官方文档说明:

好,接下来读一下它的run()方法的说明:

Java精通并发-从Thread与Runnable说起的更多相关文章

  1. Java 使用线程方式Thread和Runnable,以及Thread与Runnable的区别

    一. java中实现线程的方式有Thread和Runnable Thread: public class Thread1 extends Thread{ @Override public void r ...

  2. Java多线程之Thread、Runnable、Callable及线程池

    一.多线程 线程是指进程中的一个执行流程,一个进程中可以有多个线程.如java.exe进程中可以运行很多线程.进程是运行中的程序,是内存等资源的集合,线程是属于某个进程的,进程中的多个线程共享进程中的 ...

  3. Java精通并发-死锁检测与相关工具详解

    关于死锁其实在之前https://www.cnblogs.com/webor2006/p/10659938.html的jvm学习中已经详细举过例子了,不过这里再来复习一下,另外是从并发这个专题领域的角 ...

  4. Java精通并发-wait与sleep方法字节码分析

    在上一次https://www.cnblogs.com/webor2006/p/11372521.html中对于Thread类和Runnable接口有了一个基本的认识,这次咱们继续巩固基础,首先先新建 ...

  5. java面试题之Thread和Runnable是什么关系?

    Thread实现了Runnable接口,使得run方法支持多线程: 因类的单一继承原则,推荐多实用Runnable接口

  6. Java精通并发-锁升级与偏向锁深入解析

    对于synchronized关键字,我们在实际使用时可能经常听说用它是一个非常重的操作,其实这个“重”是要针对JDK的版本来说的,如今JDK已经到了12版本了,其实对这个关键字一直是存在偏见的,它底层 ...

  7. Java精通并发-Condition详解及相比于传统线程并发模式的改进

    在上一次https://www.cnblogs.com/webor2006/p/11792954.html对于Lock的具体实现类ReentrantLock用了一个示例对它进行了一个简单的了解,而它其 ...

  8. Java精通并发-Lock与synchronized关键字在底层的区别及实例分析

    在上两次中已经将Lock这个接口的整个官方说明进行了阅读,这次来了解一下它的一个非常重要的实现类: 啥叫“可重入”呢?其实是指一个线程已经拿到了锁,然后该线程还能再次获取这把锁,接下来在了解它之前先用 ...

  9. Java精通并发-锁粗化与锁消除技术实例演示与分析

    在上一次https://www.cnblogs.com/webor2006/p/11446473.html中对锁的升级进行了一个比较详细的理论化的学习,先回忆一下: 编译器对于锁的优化措施: 锁消除技 ...

随机推荐

  1. [LeetCode] 801. Minimum Swaps To Make Sequences Increasing 最少交换使得序列递增

    We have two integer sequences A and B of the same non-zero length. We are allowed to swap elements A ...

  2. 密码工具:KeePassXC

    KeePassXC 开源免费 只支持数据库存放在本地, 跨平台 自动填充 使用浏览器插件时,软件必须启动着 KeePassXC is a community fork of KeePassX, a n ...

  3. .Net Core使用 MiniProfiler 进行性能分析

    官方文档: https://miniprofiler.com/dotnet/AspDotNetCore 1.添加包 MiniProfiler.AspNetCore.Mvc   和    MiniPro ...

  4. python3黑帽子渗透笔记第二章--网络基础

    1 先来看看不可少的socket模块 (1)tcp_client.py 在渗透测试过程中,创建一个tcp客户端连接服务,发送垃圾数据,进行模糊测试等. (2)udp_client.py 2 nc工具的 ...

  5. Java环境配置-jdk和jre的安装

    java 是直接在 jdk 下就可以运行 jdk会自带jre 所以只需要下载jdk配置一下环境就可以了 一般编辑java是需要 myeclipse 也可以用 记事本TXT文档 或者用 notepad+ ...

  6. [转帖]DCEP究竟是什么?

    DCEP究竟是什么? https://www.cnblogs.com/kaixin2018/p/11795534.html DCEP (Digital Currency Electronic Paym ...

  7. Python-09-文件处理

    一.文件操作流程 打开文件,得到文件句柄并赋值给一个变量 通过句柄对文件进行操作 关闭文件 #1. 打开文件,得到文件句柄并赋值给一个变量 f=open('a.txt','r',encoding='u ...

  8. 《学渣的电子技术自学笔记》——二极管的工作频率与PN结结面积的关系

    <学渣的电子技术自学笔记>--二极管的工作频率与PN结结面积的关系 书本原文 :按结构分,二极管有点接触型.面接触型和平面型三类.点接触型二极管(一般为锗管)的PN结结面积很小(结电容小) ...

  9. 消息认证码 - MAC (Message Authentication Code)

    消息认证包括两个目标 1消息完整性认证: 确保张三发给我的消息是完整的,在传输过程中没有被第三方篡改 2消息的来源认证: 确保这个数据是张三发给我的,而不是李四发给我的 第一个目标通常使用散列函数来达 ...

  10. php 中header头的使用

    header("content-type:text/html;charset=utf-8");//页面字符集的设置 header("location:index.php& ...