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

C#管道技術學習經驗

開發 后端
這里介紹C#管道技術一般采用Window API來實現,最近我試著用C#管道技術,發現C#本身方便的進程線程機制使工作變得簡單至極。

C#管道技術一般采用Window API來實現,最近我試著用C#管道技術,發現C#本身方便的進程線程機制使工作變得簡單至極,隨手記錄一下,推薦給大家。

首先,我們可以通過設置Process類,獲取輸出接口,代碼如下:

  1. Process proc = new Process();  
  2. proc .StartInfo.FileName = strScript;  
  3. proc .StartInfo.WorkingDirectory = strDirectory;  
  4. proc .StartInfo.CreateNoWindow = true;  
  5. proc .StartInfo.UseShellExecute = false;  
  6. proc .StartInfo.RedirectStandardOutput = true;  
  7. proc .Start();  

然后設置線程連續讀取輸出的字符串:

  1. eventOutput = new AutoResetEvent(false);  
  2. AutoResetEvent[] events = new AutoResetEvent[1];  
  3. events[0] = m_eventOutput;  
  4.  
  5. m_threadOutput = new Thread( new ThreadStart( DisplayOutput ) );  
  6. m_threadOutput.Start();  
  7. WaitHandle.WaitAll( events );  

線程函數如下:

  1. private void DisplayOutput()  
  2. {  
  3.  while ( m_procScript != null && !m_procScript.HasExited )  
  4.  {  
  5.   string strLine = null;  
  6.   while ( ( strLine = m_procScript.StandardOutput.ReadLine() ) != null)  
  7.   {  
  8.    m_txtOutput.AppendText( strLine + "\r\n" );  
  9.    m_txtOutputm_txtOutput.SelectionStart = m_txtOutput.Text.Length;  
  10.    m_txtOutput.ScrollToCaret();  
  11.   }  
  12.   Thread.Sleep( 100 );  
  13.  }  
  14.  m_eventOutput.Set();  

這里要注意的是,使用以下語句使TextBox顯示的總是***添加的,而AppendText而不使用+=,是因為+=會造成整個TextBox的回顯使得整個顯示區域閃爍

  1. m_txtOutput.AppendText( strLine + "\r\n" );  
  2. m_txtOutput.SelectionStart = m_txtOutput.Text.Length;  
  3. m_txtOutput.ScrollToCaret();  

為了不阻塞主線程,可以將整個過程放到一個另一個線程里就可以了,以上介紹C#管道技術

【編輯推薦】

  1. C#參數類型學習筆記
  2. 處理C#消息的方法
  3. C#重載LoadPostData方法
  4. 概述C#復合控件構建
  5. C# JavaScript函數使用
責任編輯:佚名 來源: 博客園
相關推薦

2009-09-01 13:00:05

C#實現Windows

2009-08-31 15:48:02

C# Singleto

2009-08-26 17:24:49

C# Mutex對象

2009-08-27 14:44:11

C# interfac

2009-08-20 15:33:03

C#跳躍語句

2009-08-25 16:14:06

C#使用ADOX

2009-08-13 18:13:27

C#學習經驗

2009-08-19 10:25:18

C#托管資源

2009-08-12 15:55:12

C#接口定義

2009-08-27 13:45:45

C#別名指示符

2009-08-11 14:20:41

C# .NET學習經驗

2009-09-04 14:30:28

C#讀取BLOB數據

2009-08-24 17:06:37

C#字符串

2009-08-27 09:27:49

C#擴展方法

2009-08-28 16:43:57

C#多線程學習

2009-08-31 16:51:11

C# Main()方法

2009-08-28 10:31:47

C#字符ASCII碼

2009-08-24 15:50:23

C# 泛型C# 泛型委托

2009-09-01 13:10:39

C#讀取Word

2009-08-24 17:34:14

C#創建XML Web
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 在线看av网址 | 色婷婷亚洲 | 91久久婷婷| 日本福利视频 | 国产在线观看av | 一区二区三区日本 | 免费午夜视频 | 视频一区二区在线观看 | 紧缚调教一区二区三区视频 | 99久久日韩精品免费热麻豆美女 | 在线视频第一页 | 久久国产精品99久久久久久丝袜 | 91在线视频免费观看 | 久久精品久久久久久 | 97视频成人 | 国产日韩欧美中文字幕 | 亚洲在线免费观看 | 久草视频在线播放 | 99免费在线视频 | 亚洲天堂一区 | 天天干天天爱天天操 | 亚洲最大福利网 | 久久精品欧美一区二区三区不卡 | 色爱综合网 | 国产激情偷乱视频一区二区三区 | 久久久精品一区二区 | 四虎首页| 国产一区二区在线视频 | 欧美日韩久久久久 | 精品一二三区视频 | 黄色毛片视频 | 久久99精品国产自在现线小黄鸭 | 在线国产一区二区 | 久久亚| 一区二区三区视频在线观看 | 国产精品2区 | 韩日一区二区 | 99精品视频免费观看 | 亚洲永久 | 亚洲精品国产成人 | 国产欧美一区二区三区在线看 |