ABHS001-java多线程1-20--

上面是第5讲
4:55
11-构造thread的时候,传入stacksize代表该线程占用的stack大小如果没指定,默认是0,0代表会忽略该参数,该参数会被jni函数使用;该参数和平台有关
5:54
11-所以stacksize一般用虚拟机参数指定。
6:50
14-join..线程A里调用线程B, 即B.join.也就是说B join进来了。那就是A要等B完了再继续A.
7:38
13-那个java资源管理工具叫jconsole
7:48
15-t.interrupt()方法在线程执行sleep,wait,join时,会受到InterruptException,在其他时候是收不到的,只是会设置interrupt标识
8:13
6-还记得售票窗口的例子吗?为了实现共享变量的一致性,可以将线程逻辑部分,即run方法通过实现runnable接口抽离出来,这样启动多个线程的时候,跑的是单个的线程逻辑哦
10:46
20-视频任务,修改售票示例,确保正确
11:05
16-线程中判断bool值来决定是否退出线程是好的,但是有可能线程中在执行一个很长时间的操作, 并没有及时去判断bool值,这个时候如何及时的打断这个线程呢?详见17节
11:47
17-线程A中设置线程B为守护线程,然后A中执行B.join这样就能保持两个线程一直存在
13:55
14-join是有毫秒参数API的
14:09
多线程里如果需要共享变量,比如计数值,最简单的办法是将该变量设为static即可
14:18
17-这节有一个终止超时线程的方法,代码可以记忆一下
15:17
12-daemon线程会在其他程序退出后退出,所以自己创建的休眠1分钟的线程如果设置成了守护线程,它可能并不会sleep1分钟就会退出
15:42
14-在main线程中执行Thread.currentThread().join();可以让main线程一直执行;因为该句的含义是在等main结束,但是main没结束,因为他在等自己结束
16:47
7-实现runnable接口创建线程的方式是使用了策略模式,所谓的策略是指将具体的实现逻辑封装到了runnable中
17:49
12-守护线程常用场景是心跳线程
21:58
15-t.interrupt();要特别注意中断的是谁
22:08
Thread的创建使用了模板方法模式,可以去回顾一下该设计模式
23:56
在jvm启动后,实际有多个线程,但是至少有一个非守护线程
24:31
线程的生命周期分为new runnable running block termate
25:48
12-守护线程里再建一个守护线程,都是遵循之前的原则,没有非活跃的非守护进程,守护线程都会退出
29:25
9-stackSize这一节其实没什么内容

原文地址:https://www.cnblogs.com/boucher/p/12305996.html

时间: 2024-11-02 21:39:01

ABHS001-java多线程1-20--的相关文章

Java多线程20:多线程下的其他组件之CountDownLatch、Semaphore、Exchanger

前言 在多线程环境下,JDK给开发者提供了许多的组件供用户使用(主要在java.util.concurrent下),使得用户不需要再去关心在具体场景下要如何写出同时兼顾线程安全性与高效率的代码.之前讲过的线程池.BlockingQueue都是在java.util.concurrent下的组件,Timer虽然不在java.util.concurrent下,但也算是.后两篇文章将以例子的形式简单讲解一些多线程下其他组件的使用,不需要多深刻的理解,知道每个组件大致什么作用就行. 本文主要讲解的是Cou

Java多线程系列--“JUC锁”11之 Semaphore信号量的原理和示例

概要 本章,我们对JUC包中的信号量Semaphore进行学习.内容包括:Semaphore简介Semaphore数据结构Semaphore源码分析(基于JDK1.7.0_40)Semaphore示例 转载请注明出处:http://www.cnblogs.com/skywang12345/p/3534050.html Semaphore简介 Semaphore是一个计数信号量,它的本质是一个"共享锁". 信号量维护了一个信号量许可集.线程可以通过调用acquire()来获取信号量的许可

Rhythmk 一步一步学 JAVA (21) JAVA 多线程

1.JAVA多线程简单示例 1.1 .Thread  集成接口 Runnable 1.2 .线程状态,可以通过  Thread.getState()获取线程状态: New (新创建) Runnable (可以运行) Blocked  (被阻塞) Waiting  (等待) Timed waiting (计时等待) Terminated  (被终止) ? 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27

Java 多线程

多线程作为Java中很重要的一个知识点,在此还是有必要总结一下的. 一.线程的生命周期及五种基本状态 关于Java中线程的生命周期,首先看一下下面这张较为经典的图: 上图中基本上囊括了Java中多线程各重要知识点.掌握了上图中的各知识点,Java中的多线程也就基本上掌握了.主要包括: Java线程具有五中基本状态 新建状态(New):当线程对象对创建后,即进入了新建状态,如:Thread t = new MyThread(); 就绪状态(Runnable):当调用线程对象的start()方法(t

JAVA多线程和并发基础面试问答(转载)

原文链接:http://www.cnblogs.com/dolphin0520/p/3932934.html 多线程和并发问题是Java技术面试中面试官比较喜欢问的问题之一.在这里,从面试的角度列出了大部分重要的问题,但是你仍然应该牢固的掌握Java多线程基础知识来对应日后碰到的问题. Java多线程面试问题 1. 进程和线程之间有什么不同? 一个进程是一个独立(self contained)的运行环境,它可以被看作一个程序或者一个应用.而线程是在进程中执行的一个任务.Java运行环境是一个包含

JAVA多线程和并发基础面试问答

原文链接:http://ifeve.com/java-multi-threading-concurrency-interview-questions-with-answers/ 多线程和并发问题是Java技术面试中面试官比较喜欢问的问题之一.在这里,从面试的角度列出了大部分重要的问题,但是你仍然应该牢固的掌握Java多线程基础知识来对应日后碰到的问题.(校对注:非常赞同这个观点) Java多线程面试问题 1. 进程和线程之间有什么不同? 一个进程是一个独立(self contained)的运行环

Java多线程开发系列之四:玩转多线程(线程的控制2)

在上节的线程控制(详情点击这里)中,我们讲解了线程的等待join().守护线程.本节我们将会把剩下的线程控制内容一并讲完,主要内容有线程的睡眠.让步.优先级.挂起和恢复.停止等. 废话不多说,我们直接进入正题:  3.线程睡眠  sleep() 所有介绍多线程开发的学习案例中,基本都有用到这个方法,这个方法的意思就是睡眠(是真的,请相信我...).好吧,如果你觉得不够具体,可以认为是让当前线程暂停一下,当前线程随之进入阻塞状态,当睡眠时间结束后,当前线程重新进入就绪状态,开始新一轮的抢占计划!

java基础知识回顾之java Thread类学习(六)--java多线程同步函数用的锁

1.验证同步函数使用的锁----普通方法使用的锁 思路:创建两个线程,同时操作同一个资源,还是用卖票的例子来验证.创建好两个线程t1,t2,t1线程走同步代码块操作tickets,t2,线程走同步函数封装的代码操作tickets,同步代码块中的锁我们可以指定.假设我们事先不知道同步函数用的是什么锁:如果在同步代码块中指定的某个锁(测试)和同步函数用的锁相同,就不会出现线程安全问题,如果锁不相同,就会发生线程安全问题. 看下面的代码:t1线程用的同步锁是obj,t2线程在操作同步函数的资源,假设不

java多线程文件上传服务器

描述: (1)jdk自带线程池见 JDK自带线程池配置 (2)此上传文件服务器中上传文件的后缀名通过第一段缓冲字符流传递,此缓冲字符流大小为1024,在文件接收端以1024接收.处理. 1.服务器代码如下(使用jdk自带线程池): 1 /** 2 * 服务器处理多线程问题 3 * 4 * 1.因为服务器是要很多人访问的,因此里面一定要用多线程来处理,不然只能一个人一个人的访问,那还叫Y啥服务器 5 * 6 * 2,拿上面这个文件上传的例子来说,它将每个连接它的用户封装到线程里面去,把用户要执行的

java多线程系类:JUC原子类:03之AtomicLongArray原子类

概要 AtomicIntegerArray, AtomicLongArray, AtomicReferenceArray这3个数组类型的原子类的原理和用法相似.本章以AtomicLongArray对数组类型的原子类进行介绍.内容包括:AtomicLongArray介绍和函数列表AtomicLongArray源码分析(基于JDK1.7.0_40)AtomicLongArray示例 转载请注明出处:http://www.cnblogs.com/skywang12345/p/3514604.html