From 018741839ed5ada4d591380daf3f91141c4c08f2 Mon Sep 17 00:00:00 2001 From: jizhou Date: 2021年6月24日 14:08:35 +0800 Subject: [PATCH] =?UTF-8?q?modify=20=E4=BF=AE=E6=94=B9=E5=9B=BE=E7=89=87?= =?UTF-8?q?=E4=B8=8D=E6=98=BE=E7=A4=BA=E7=9A=84=E9=97=AE=E9=A2=98?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- ...45237円272円346円234円254円346円223円215円344円275円234円.md" | 11 ++++++----- 1 file changed, 6 insertions(+), 5 deletions(-) diff --git "a/02.347円272円277円347円250円213円347円232円204円347円212円266円346円200円201円350円275円254円346円215円242円344円273円245円345円217円212円345円237円272円346円234円254円346円223円215円344円275円234円/347円272円277円347円250円213円347円212円266円346円200円201円350円275円254円346円215円242円344円273円245円345円217円212円345円237円272円346円234円254円346円223円215円344円275円234円.md" "b/02.347円272円277円347円250円213円347円232円204円347円212円266円346円200円201円350円275円254円346円215円242円344円273円245円345円217円212円345円237円272円346円234円254円346円223円215円344円275円234円/347円272円277円347円250円213円347円212円266円346円200円201円350円275円254円346円215円242円344円273円245円345円217円212円345円237円272円346円234円254円346円223円215円344円275円234円.md" index 7458d85..32b3d9a 100644 --- "a/02.347円272円277円347円250円213円347円232円204円347円212円266円346円200円201円350円275円254円346円215円242円344円273円245円345円217円212円345円237円272円346円234円254円346円223円215円344円275円234円/347円272円277円347円250円213円347円212円266円346円200円201円350円275円254円346円215円242円344円273円245円345円217円212円345円237円272円346円234円254円346円223円215円344円275円234円.md" +++ "b/02.347円272円277円347円250円213円347円232円204円347円212円266円346円200円201円350円275円254円346円215円242円344円273円245円345円217円212円345円237円272円346円234円254円346円223円215円344円275円234円/347円272円277円347円250円213円347円212円266円346円200円201円350円275円254円346円215円242円344円273円245円345円217円212円345円237円272円346円234円254円346円223円215円344円275円234円.md" @@ -45,14 +45,15 @@ } } - + + 三种新建线程的方式具体看以上注释,需要主要的是: - 由于java不能多继承可以实现多个接口,因此,在创建线程的时候尽量多考虑采用实现接口的形式; - 实现callable接口,提交给ExecutorService返回的是异步执行的结果,另外,通常也可以利用FutureTask(Callable callable)将callable进行包装然后FeatureTask提交给ExecutorsService。如图, -![FutureTask接口实现关系](https://github.com/CL0610/Java-concurrency/blob/master/2.%E7%BA%BF%E7%A8%8B%E7%9A%84%E7%8A%B6%E6%80%81%E8%BD%AC%E6%8D%A2%E4%BB%A5%E5%8F%8A%E5%9F%BA%E6%9C%AC%E6%93%8D%E4%BD%9C/futureTask%E6%8E%A5%E5%8F%A3%E5%AE%9E%E7%8E%B0%E5%85%B3%E7%B3%BB.png) +![FutureTask接口实现关系](futureTask接口实现关系.png) 另外由于FeatureTask也实现了Runable接口也可以利用上面第二种方式(实现Runable接口)来新建线程; @@ -61,7 +62,7 @@ # 2. 线程状态转换 # -![线程状态转换图](https://github.com/CL0610/Java-concurrency/blob/master/2.%E7%BA%BF%E7%A8%8B%E7%9A%84%E7%8A%B6%E6%80%81%E8%BD%AC%E6%8D%A2%E4%BB%A5%E5%8F%8A%E5%9F%BA%E6%9C%AC%E6%93%8D%E4%BD%9C/%E7%BA%BF%E7%A8%8B%E7%8A%B6%E6%80%81%E8%BD%AC%E6%8D%A2%E5%85%B3%E7%B3%BB.png) +![线程状态转换图](线程状态转换关系.png) @@ -71,7 +72,7 @@ 用一个表格将上面六种状态进行一个总结归纳。 -![JAVA线程的状态](https://github.com/CL0610/Java-concurrency/blob/master/2.%E7%BA%BF%E7%A8%8B%E7%9A%84%E7%8A%B6%E6%80%81%E8%BD%AC%E6%8D%A2%E4%BB%A5%E5%8F%8A%E5%9F%BA%E6%9C%AC%E6%93%8D%E4%BD%9C/%E7%BA%BF%E7%A8%8B%E7%8A%B6%E6%80%81.png) +![JAVA线程的状态](线程状态.png) # 3. 线程状态的基本操作 # @@ -83,7 +84,7 @@ isInterrupted()来感知其他线程对其自身的中断操作,从而做出响应。另外,同样可以调用Thread的静态方法 interrupted()对当前线程进行中断操作,该方法会清除中断标志位。**需要注意的是,当抛出InterruptedException时候,会清除中断标志位,也就是说在调用isInterrupted会返回false。** -![线程中断的方法](https://github.com/CL0610/Java-concurrency/blob/master/2.%E7%BA%BF%E7%A8%8B%E7%9A%84%E7%8A%B6%E6%80%81%E8%BD%AC%E6%8D%A2%E4%BB%A5%E5%8F%8A%E5%9F%BA%E6%9C%AC%E6%93%8D%E4%BD%9C/%E4%B8%AD%E6%96%AD%E7%BA%BF%E7%A8%8B%E6%96%B9%E6%B3%95.png) +![线程中断的方法](中断线程方法.png)

AltStyle によって変換されたページ (->オリジナル) /