c 裡的 pthread create 函式小結

2021-09-29 19:41:02 字數 765 閱讀 7931

在c++的類中,普通成員函式不能作為pthread_create的執行緒函式,如果要作為pthread_create中的執行緒函式,必須是static !

在c語言中,我們使用pthread_create建立執行緒,執行緒函式是乙個全域性函式,所以在c++中,建立執行緒時,也應該使用乙個全域性函式。static定義的類的成員函式就是乙個全域性函式。

例如:

------------- cut here start -------------

#include

class thread ;

int thread::start()

return 0; }

void* thread::start_thread(void *arg) //靜態成員函式只能訪問靜態變數或靜態函式,通過傳遞this指標進行呼叫

------------- cut here end -------------

#include

#include

#include "thread.h"

#include

class mythread:public thread ;

void mythread::run()

int main(int argc,char *ar**)

------------- cut here end -------------

./g++ thread.cpp -lpthread -o main

./main

C 裡的委託

委託 比如說乙個公司 場景 你是老闆,手下有兩個員工,小張和小王。你命令小王,如果小張玩遊戲,則小王扣去小張500元錢。這就是現實中的委託。實際上,在寫程式中,程式設計師就是老闆,小張和小王就是兩個物件。小張玩遊戲是乙個方法,小張還有乙個遊戲事件,他玩遊戲激發這個事件。而小王就是事件處理物件,他負責...

c 裡的介面

1 介面作為型別而存在 介面是型別 class 一般行為的定義和契約。作用主要有 定義多個型別都需要的公共方法和屬性 作為一種不可例項化的型別存在。實現了介面的類或結構必須實現介面定義的每乙個屬性和方法,這些方法在設計或功能上往往是相關的。2 介面和抽象類 相同之處 兩者都不能產生例項物件,都可以作...

C語言裡的for

for迴圈感覺是比較有技術含量的乙個知識點,很容易繞暈過去,特別是for迴圈的巢狀語句,總是有種不知道應該怎麼往下看的無措感。但是for迴圈其實還有點意思,特別是在我用它能輸出菱形之後,越發覺得好神奇。首先總結for的知識點 格式如下 for 表示式1 表示式2 表示式3 語句表示式1 賦初值,只執...