2009-08-06 34 views

回答

18

Blorgbeard,你必須創建,初始化並打開一個單獨的 TAdoconnection實例爲每個線程。

ADO是基於COM的技術。它使用公寓線程對象,不要忘記撥打 CoInitialize(nil)。

procedure TMyThread.Execute; 
begin 
    CoInitialize(nil); 
    try 
    try 
     // create a connection here 
    except 
    end; 
    finally 
    CoUnInitialize; 
    end; 
end; 
9

不,事實並非如此。 ADO是一個基於COM的技術。它使用單元線程對象,因此您不能跨線程邊界使用ADO連接。每個線程都需要自己的連接。