成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

Java和C#線程描述

開發(fā) 后端
這里介紹Java和C#線程,線程是允許進(jìn)行并行計(jì)算的一個(gè)抽象概念:在另一個(gè)線程完成計(jì)算任務(wù)的同時(shí),一個(gè)線程可以對(duì)圖像進(jìn)行更新,二個(gè)線程可以同時(shí)處理同一個(gè)進(jìn)程發(fā)出的二個(gè)網(wǎng)絡(luò)請(qǐng)求。

在向大家詳細(xì)介紹Java和C#線程之前,首先讓大家了解下Java和C#線程的創(chuàng)建和運(yùn)行,然后全面介紹Java和C#線程。

線程是允許進(jìn)行并行計(jì)算的一個(gè)抽象概念:在另一個(gè)線程完成計(jì)算任務(wù)的同時(shí),一個(gè)線程可以對(duì)圖像進(jìn)行更新,二個(gè)線程可以同時(shí)處理同一個(gè)進(jìn)程發(fā)出的二個(gè)網(wǎng)絡(luò)請(qǐng)求。我們?cè)谶@篇文章中將重點(diǎn)討論Java和C#線程方面的不同之處。

從概念上講,線程提供了一種在一個(gè)軟件中并行執(zhí)行代碼的方式━━每個(gè)線程都“同時(shí)”在一個(gè)共享的內(nèi)存空間中執(zhí)行指令,(當(dāng)然是在一個(gè)處理器上,這是通過處于運(yùn)行狀態(tài)的線程的交替執(zhí)行完成的。),因此,每個(gè)線程都可以訪問一個(gè)程序內(nèi)的數(shù)據(jù)結(jié)構(gòu)。由于這種原因,多線程編程的難度就可想而知了,因?yàn)橐粋€(gè)程序內(nèi)有許多不同的線程需要安全地共享數(shù)據(jù)。

Java和C#線程的創(chuàng)建和運(yùn)行

Java在java.lang.Thread和java.lang.Runnable類中提供了大部分的線程功能。創(chuàng)建一個(gè)線程非常簡(jiǎn)單,就是擴(kuò)展Thread類,并調(diào)用start()。通過創(chuàng)建一個(gè)執(zhí)行Runnable()的類,并將該類作為參數(shù)傳遞給Thread(),也可以定義一個(gè)線程。仔細(xì)地閱讀下面這個(gè)簡(jiǎn)單的Java程序,其中有2個(gè)線程同時(shí)在從1數(shù)到5,并將結(jié)果打印出來。

  1. public class ThreadingExample  
  2. extends Object {  
  3. public static void main( String args[] ) {  
  4. Thread[] threads = new Thread[2];  
  5. for( int count=1;count<=threads.length;count++ ) {  
  6. threads[count] = new Thread( new Runnable() {  
  7. public void run() {  
  8. count();  
  9. }  
  10. }  
  11. threads[count].start();  
  12. }  
  13. }  
  14.  
  15. public static void count() {  
  16. for( int count=1;count<=5;count++ )  
  17. System.out.print( count + " " );  
  18. }  

我們可以使用System.Threading.Thread和System.Threading.ThreadStart二個(gè)類將上述的Java程序轉(zhuǎn)換為C#語言:

  1. using System.Threading;  
  2. public class ThreadingExample : Object {  
  3. public static void Main() {  
  4. Thread[] threads = new Thread[2];  
  5. for( int count=1;count<=threads.Length;count++ ) {  
  6. threads[count] = new Thread( new ThreadStart( Count ) );  
  7. threads[count].Start();  
  8. }  
  9. }  
  10.  
  11. public static void Count() {  
  12. for( int count=1;count<=5;count++ )  
  13. Console.Write( count + " " );  
  14. }  

這個(gè)例子中有一些小技巧。Java允許擴(kuò)展java.lang.Thread類和執(zhí)行java.lang.Runnable接口,C#則沒有為我們提供這些便利。一個(gè)C#中的Thread對(duì)象是不可知的,必須通過ThreadStart進(jìn)行創(chuàng)建,這意味著不能使用內(nèi)部的類模式,而必須創(chuàng)建一個(gè)對(duì)象,而且必須傳遞給線程一個(gè)對(duì)象的方法供線程執(zhí)行用。

【編輯推薦】

  1. 運(yùn)用C#數(shù)據(jù)提供者
  2. C#允許運(yùn)算符重載剖析
  3. Java和C#頂層聲明概述
  4. C#完全限定名簡(jiǎn)單分析
  5. C#數(shù)據(jù)類型簡(jiǎn)單介紹
責(zé)任編輯:佚名 來源: 博客園
相關(guān)推薦

2009-08-13 17:04:09

C#語言C#程序

2009-09-07 15:15:43

2009-09-04 15:09:48

C#多線程啟動(dòng)Squa

2009-08-19 10:09:21

C#和C++

2009-08-26 14:54:23

C# new和over

2009-08-28 11:22:11

C#裝箱和拆箱

2009-08-17 16:32:34

C# Anonymou

2009-08-18 17:41:22

C# ListView

2009-08-31 13:18:09

C# IWebMess

2009-08-26 17:49:36

C# readonly

2009-08-03 18:08:39

C# ICloneab

2009-08-31 18:32:01

C# ListBoxE

2009-08-03 16:45:02

C#異步Socket

2009-08-20 09:30:03

C#開發(fā)WinForm

2009-09-03 13:14:55

C#構(gòu)造函數(shù)C#析構(gòu)函數(shù)

2009-09-01 18:25:32

C#結(jié)構(gòu)實(shí)例

2009-09-04 11:15:07

選擇C#構(gòu)造函數(shù)

2009-09-04 13:22:31

C#實(shí)現(xiàn)多個(gè)接口

2009-09-07 14:33:02

C# switch語句

2009-08-21 17:31:58

C#垃圾回收
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)

主站蜘蛛池模板: 日批日韩在线观看 | 日韩午夜网站 | 日韩毛片免费看 | 国产精品.xx视频.xxtv | 综合一区二区三区 | 日韩欧美大片在线观看 | 精品一区二区在线观看 | 在线视频亚洲 | 麻豆久久久久久 | 91久久精品国产91久久 | 欧美日韩福利 | 亚洲精品av在线 | 亚洲美乳中文字幕 | 国产伊人久久久 | 欧美激情一区二区 | 激情伊人网 | av免费看片 | 成人在线视频免费播放 | 国产精品永久久久久 | 国产精品一区三区 | 亚洲一区在线播放 | 国产亚洲精品久久午夜玫瑰园 | 午夜a√| 国产片侵犯亲女视频播放 | 亚洲综合日韩精品欧美综合区 | 亚洲视频国产 | 亚洲高清免费观看 | 97综合在线 | 久久久噜噜噜久久中文字幕色伊伊 | 中文字幕亚洲欧美日韩在线不卡 | 九九热最新地址 | 日韩精品在线网站 | 久草成人 | 黄色在线免费观看 | 欧美福利三区 | 亚洲精品一区二区三区四区高清 | 91丨九色丨国产在线 | 亚洲精品二区 | 亚洲国产精品久久久久婷婷老年 | 日韩在线观看 | 国产1区2区在线观看 |