c語言(vc6 0)關於Creat thread註解問題

2023-01-04 02:45:41 字數 1744 閱讀 9845

1樓:夢想窗外

handle winapi createthread(__in_opt lpsecurity_attributes lpthreadattributes,

__in size_t dwstacksize,__in lpthread_start_routine lpstartaddress,

__in_opt lpvoid lpparameter,__in dword dwcreationflags,__out_opt lpdword lpthreadid);第一個引數是security_attributes結構體指標,決定子程序是否可以使用返回的控制代碼,如果指定為null, 表示使用預設安全設定。

第二個引數是堆疊的初始大小,0表示使用系統指定值。

第三個引數是執行緒啟動時需要執行的函式地址,即函式名。

第四個引數是傳遞給執行緒函式的void型別的指標。

第五個引數是額外的執行緒建立標誌,0表示執行緒建立後立即執行。

最後一個引數用於存放返回的執行緒識別符號,可選,型別為dword指標。

2樓:匿名使用者

這個是我寫的?!

看百科裡面有對createthread的說明

vb中如何利用createthread實現多執行緒能給個最簡單的例子嗎

c語言 createthread 傳遞引數出錯

3樓:

createthread 會建立一個新的執行緒,這個執行緒執行輸出之前,主執行緒裡的i可能繼續增加。

而你傳過去的引數是一個地址,所以其指向的值也會變。

也就是說,printf之前,主執行緒裡的for迴圈可能已經結束了,這時i=10。這就意味著,你傳給每一個執行緒的引數所指向的記憶體都變成了10。

4樓:匿名使用者

執行緒啟動需要一段小小時間,你機器快,10個執行緒建立完了,不見得有一個開始執行。最後i都固定了就輸出相同的值

這個使用createthread建立執行緒寫多執行緒的程式怎麼不對啊,求解,win32小程式

5樓:吉祥二進位制

這**是不是從linux平臺上直接複製過來的?因為windows平臺的64位大整數用的一個關鍵字__int64,而使用unsigned long long的好像是linux .

其次,你的執行緒函式,在windows平臺上是如下的函式原型格式 :

dword threadfuncname(arg list); //執行緒函式的返回值不對

再次,我沒有編譯通過~_~ 可能是程式設計環境的事,因為一直用的vc6.0 還麼有vs...不過,那個傳遞給執行緒函式的引數 x1 x2 你得改一下。。

6樓:匿名使用者

**函式的引數是void*型別吧

用c語言編寫程式利用createprocess和createthread函式建立一個windows 100

7樓:匿名使用者

標頭檔案:

回winbase.hbool createprocess

求助,使用createthread建立的程序應該如何關閉

8樓:天然人雙子

在for迴圈中,執行時,程式會死掉,這時可以加上doevents,跳出到作業系統。 在外面按鈕寫上跳出的條件就行了。

關於vc6 0的問題

vc 是編輯器,編譯器,聯結器 的整合開發環境。總之很複雜。一時也說不明白。第二個問題如樓上,vc有一個可以設定include目錄的選項。大體在工具 選項,不過不同版本稍有不同。看 是想要引用一個叫opensees的庫?還是開源?要是引庫還需要設定 lib的路徑。先建立一個工作空間,最好全部放在自己...

我用vc6 0程式設計c語言軟體,是出現了錯誤大家幫我看看

這應該是重複定義問題 屬於編譯聯接的常見問題之一,原因是在不同的原始檔重複定義變數。比如project1有2個c或cpp檔案,假設為a.c,b.c如果1,定義了相同名字的變數 2,包含了同樣的標頭檔案 其中定義了非區域性變數 這樣在編譯生成的a.obj,b.obj檔案中都會為為這個同一變數分配空間,...

vc6 0菜鳥求教

include int jeiguo int p int a int s 函式指標的呼叫的宣告 int main i,n,m 也可以使用者輸入a i 為方便自己賦值int point int p int s printf 請輸入十個整數 n for i 0 i 10 i scanf d a i pr...