2010-09-23 33 views
1

下面是幾個說ASP.NET默認爲單線程單元的來源之一,你必須設置「executeInMta」爲true以覆蓋這種行爲(編輯:大家都指出,我錯了 - 這是指傳統的ASP我想有更多的文檔來支持這一彌補ASP.NET,但我錯了):ASP.NET是否默認爲STAThread或MTAThread?

http://www.iis.net/ConfigReference/system.webServer/asp/comPlus

下面是幾個來源說,ASP.NET默認爲一個。多線程的公寓,並且您必須將「aspCompat」設置爲true才能覆蓋此行爲:

http://www.west-wind.com/presentations/howaspnetworks/howaspnetworks.asp

那麼,這是什麼?我目前沒有任何上述覆蓋,我想進入MTA模式。相關的問題 - 有沒有辦法通過調試來判斷當前正在執行的線程是STA還是MTA?

謝謝。

回答

1

您鏈接的第一篇文章是指ASP,而不是ASP.NET。傳統ASP默認使用STA,而ASP.NET默認使用MTA。

1

您的第一個參考是來自IIS7的ComPlus配置設置,並且似乎適用於傳統的ASP。

ASP.NET線程默認爲MTA。