2016-09-27 22 views
1

幾個月前,我加一個print語句是在Program.cs沿爲什麼我的UI線程ID通常是9或10?

Console.Out.WriteLine("UI Thread ID: " + Thread.CurrentThread.ManagedThreadId); 

行這通常會導致打印UI Thread ID: 9的時間約80%創建的我的主要Form構造,其他19 %是10,我看過8也許有一兩次。

爲什麼UI線程ID通常是這些數字之一? (編輯)之前創建了哪些線程?由於它有所不同,我認爲它在創建/一些線程之前無關緊要。

+0

** ManagedThreadId屬性的值不隨時間變化,甚至如果託管公共語言運行庫的非託管代碼將線程實現爲光纖。** - 不知道這有什麼幫助。 –

+7

@AmitKumarGhosh這不是他要問的問題 – MickyD

+2

因爲它是啓動後託管應用程序中的第9個線程,請給出或採用幾個線程? – CodeCaster

回答

1

我認爲這是因爲在你的8或9之前有一些其他的線索是確切的。

我認爲這些線程適用於在後臺運行的一些.NET框架任務。當啓動一個Windows窗體應用程序時,它已經有16個線程在運行,一些與Visual Studio調試相關,其他的用於'.NET系統事件'等。

相關問題