推 colorboy1769:我知道不是呼叫啦 只是宣告 感謝 06/01 21:51
※ 引述《colorboy1769 (彩色男孩)》之銘言:
: 想請問一下在Visual Studio 2005裡面
: thread的宣告方法
: 我在MSDN查到的例子是
: http://msdn.microsoft.com/zh-tw/library/ck8bc5c6(VS.80).aspx
: Dim TestThread As New System.Threading.Thread(AddressOf TestSub)
: 可是我在程式裡
: testsub的部分換成我自己寫的method 就會出錯
: 錯誤訊息: 'AddressOf' 運算元必須是方法名稱 (沒有括號)。
: 可是如果是自己寫的method
: 不管是sub or function 就算不用參數 也要有括號吧
這邊只是要指定 Thread 啟動時要執行哪個 method,
並不是要呼叫某個 method, 所以 TestSub 不加 () (不然跟呼叫有什麼不同?)
你可以點進 Thread 的說明, 裡面會講 他接受哪些型式的 method,
並不是所有的 method 他都接受..
Thraed 只接受沒有傳回值, 並沒有參數, 或只有一個 Object 參數的 method,
在 VB 中就是
Sub TestSub() 或 Sub TestSub(obj as Object)
其實要用哪上面那兩個中的哪一個,
是要由 Thread(ThreadStart)或 Thread(ParameterizedThreadStart)
這兩個多載決定的, 只是 VB 刻意把這個部份呼略掉..
這些詳細資料你都可以中 MSDN 中查到
--
※ 發信站: 批踢踢實業坊(ptt.cc)
◆ From: 220.139.135.178