最新国产好看的视频,伊人天堂AV在线,国产Aaaaaa视频,蜜臀视频在线观看一区,人妻av色图,密臀久久久精品影片,青青视频免费观看毛片,久草在线观看视,国产三级精品色情在线

java多線程入門知識及示例程序

 更新時間:2013年12月30日 15:11:02   投稿:zxhpj  
java多線程入門知識及示例程序,大家參考使用吧

為什么需要多線程?

模型的簡化,如某些程序是由多個相對任務(wù)的運(yùn)行:

圖形界面的出現(xiàn),輸入、輸出的阻塞

多核CPU的更好利用

異步行為的需要

Java多線程的特性:

程序的入口main本身是一個線程

線程是并發(fā)的,無序執(zhí)行的

線程內(nèi)部是順序執(zhí)行的

共享數(shù)據(jù)

Java多線程的風(fēng)險(xiǎn):

安全風(fēng)險(xiǎn):由于線程的操作順序是不確定的,某些在單線程下能運(yùn)行的程序到多線程下會出現(xiàn)意外的結(jié)果。

性能風(fēng)險(xiǎn):服務(wù)器的吞吐量、響應(yīng)性、資源消耗

Java多線程API:

Java可以通過兩種形式創(chuàng)建線程:一、實(shí)現(xiàn)Runnable接口,二、繼承Thread類。

繼承thread創(chuàng)建線程示例代碼

復(fù)制代碼 代碼如下:

public class ThreadTest extends Thread { 
 
    public static void main(String[] args) { 
        ThreadTest thread = new ThreadTest(); 
        thread.start(); 
        for (int i=0; i<10; i++) { 
            System.out.println("main:"+i); 
        } 
    } 
 
    @Override 
    public void run() { 
        for (int i=0; i<10; i++) { 
            System.out.println("thread:"+i); 
        } 
    } 
 

實(shí)現(xiàn)runnable創(chuàng)建線程代碼

復(fù)制代碼 代碼如下:

package com.openrdp.thread.api; 
 
public class RunnableTest implements Runnable { 
 
    public static void main(String[] args) { 
        RunnableTest runnable = new RunnableTest(); 
        Thread thread = new Thread(runnable); 
        thread.start(); 
        for (int i=0; i<10; i++) { 
            System.out.println("main:"+i); 
        } 
    } 
 
    @Override 
    public void run() { 
        for (int i=0; i<10; i++) { 
            System.out.println("thread:"+i); 
        } 
    } 
 

Java線程池技術(shù)

Executors獲取exceuctorservice線程池代碼

復(fù)制代碼 代碼如下:

package com.openrdp.thread.api; 
 
import java.util.concurrent.ExecutorService; 
import java.util.concurrent.Executors; 
 
public class TreadPoolTest { 
    public static void main(String[] args) { 
        ExecutorService threadPool = Executors.newFixedThreadPool(99); 
        TaskThread thread1 = new TaskThread("t1"); 
        threadPool.execute(thread1); 
        TaskThread thread2 = new TaskThread("t2"); 
        threadPool.execute(thread2); 
         
    } 
     
    static class TaskThread implements Runnable { 
        String param; 
        public TaskThread(String param) { 
            this.param = param; 
        } 
 
        @Override 
        public void run() { 
             
        } 
    } 
}

相關(guān)文章

  • Spring?boot2.0?實(shí)現(xiàn)日志集成的方法(3)

    Spring?boot2.0?實(shí)現(xiàn)日志集成的方法(3)

    這篇文章主要介紹了Spring?boot2.0?實(shí)現(xiàn)日志集成的方法,基于上一篇將日志信息根據(jù)類別輸出到不同的文件中,這篇文章將通過日志來監(jiān)控用戶的操作行為、請求的耗時情況,針對耗時久的請求進(jìn)行性能分析,提升系統(tǒng)性能,需要的小伙伴可以參考一下
    2022-04-04
  • 詳解Spring依賴注入的三種方式以及優(yōu)缺點(diǎn)

    詳解Spring依賴注入的三種方式以及優(yōu)缺點(diǎn)

    IoC?和?DI?是?Spring?中最重要的兩個概念,其中?IoC(Inversion?of?Control)為控制反轉(zhuǎn)的思想,而?DI(Dependency?Injection)依賴注入為其(IoC)具體實(shí)現(xiàn)。那么?DI?實(shí)現(xiàn)依賴注入的方式有幾種?這些注入方式又有什么不同?本文就來和大家一起詳細(xì)聊聊
    2022-08-08
  • MyBatis-Plus實(shí)現(xiàn)優(yōu)雅處理JSON字段映射

    MyBatis-Plus實(shí)現(xiàn)優(yōu)雅處理JSON字段映射

    默認(rèn)情況下,MyBatis-Plus 是不支持直接映射 JSON 類型的,這時候就需要借助其他的方法,下面小編就來和大家講講MyBatis-Plus如何優(yōu)雅處理JSON字段映射吧
    2025-04-04
  • Java?NIO通信基礎(chǔ)示例詳解

    Java?NIO通信基礎(chǔ)示例詳解

    這篇文章主要為大家介紹了Java?NIO通信基礎(chǔ)使用示例詳解,有需要的朋友可以借鑒參考下,希望能夠有所幫助,祝大家多多進(jìn)步,早日升職加薪
    2022-12-12
  • java使用ArrayList遍歷及效率比較實(shí)例分析

    java使用ArrayList遍歷及效率比較實(shí)例分析

    這篇文章主要介紹了java使用ArrayList遍歷及效率比較,實(shí)例分析了ArrayList遍歷的方法與使用技巧,具有一定參考借鑒價值,需要的朋友可以參考下
    2015-07-07
  • springboot+vue實(shí)現(xiàn)SSE服務(wù)器發(fā)送事件的示例

    springboot+vue實(shí)現(xiàn)SSE服務(wù)器發(fā)送事件的示例

    本文介紹了使用Spring Boot和Vue實(shí)現(xiàn)服務(wù)器發(fā)送事件,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧
    2025-01-01
  • Springboot自動裝配實(shí)現(xiàn)過程代碼實(shí)例

    Springboot自動裝配實(shí)現(xiàn)過程代碼實(shí)例

    這篇文章主要介紹了Springboot自動裝配實(shí)現(xiàn)過程代碼實(shí)例,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友可以參考下
    2020-06-06
  • 一篇文章帶你入門Java接口

    一篇文章帶你入門Java接口

    這篇文章主要介紹了JAVA中接口的定義和接口的實(shí)現(xiàn),文中講解非常細(xì)致,配合代碼更好的幫大家學(xué)習(xí)參考,感興趣的朋友可以了解下
    2021-08-08
  • SpringSecurity攔截器鏈的使用詳解

    SpringSecurity攔截器鏈的使用詳解

    這篇文章主要介紹了SpringSecurity攔截器鏈的使用詳解,webSecurity的build方法最終調(diào)用的是doBuild方法,doBuild方法調(diào)用的是webSecurity的performBuild方法,webSecurity完成所有過濾器的插件,最終返回的是過濾器鏈代理類filterChainProxy,需要的朋友可以參考下
    2023-11-11
  • springboot前后端分離集成CAS單點(diǎn)登錄(統(tǒng)一認(rèn)證)

    springboot前后端分離集成CAS單點(diǎn)登錄(統(tǒng)一認(rèn)證)

    單點(diǎn)登錄是一種身份認(rèn)證和授權(quán)技術(shù),允許用戶在多個應(yīng)用系統(tǒng)中使用同一套用戶名和密碼進(jìn)行登錄,本文主要介紹了springboot前后端分離集成CAS單點(diǎn)登錄,具有一定的參考價值,感興趣的可以了解一下
    2024-09-09

最新評論

冷水江市| 墨竹工卡县| 囊谦县| 玉环县| 安庆市| 南昌县| 潼关县| 临江市| 齐河县| 金华市| 亚东县| 建湖县| 盐边县| 辽宁省| 琼中| 宜宾县| 大新县| 修文县| 商都县| 郎溪县| 普格县| 湘潭市| 新沂市| 昌江| 嫩江县| 罗定市| 蒲江县| 万安县| 永胜县| 黄山市| 辛集市| 台湾省| 永吉县| 麻城市| 江安县| 尉犁县| 来宾市| 新营市| 宜都市| 尉犁县| 格尔木市|