c语言键盘回调函数键盘的码,深入浅出剖析C语言函数指针与回调函数(三)
前面兩篇文章:
http://blog.csdn.net/morixinguan/article/details/65494239
http://blog.csdn.net/morixinguan/article/details/65938128
在UNix多線程編程中,我們會使用到以下函數(shù):
Pthread_create,
我們來看看它的原型:
int? pthread_create((pthread_t?*thread,? pthread_attr_t? *attr,? void? *(*start_routine)(void?*),? void? *arg)
參數(shù)說明:
(1)????thread:表示線程的標(biāo)識符
(2)????attr:表示線程的屬性設(shè)置
(3)????start_routine:表示線程函數(shù)的起始地址
(4)????arg:表示傳遞給線程函數(shù)的參數(shù)
函數(shù)的返回值為:
(1)????success:返回0
(2)????fair:返回-1
看到這個函數(shù)的第三個參數(shù),這不就是一個函數(shù)指針,同時也是一個回調(diào)函數(shù)嘛!這就是函數(shù)指針和回調(diào)函數(shù)在UNIX環(huán)境多線程編程中的應(yīng)用。
我們在windows的dev C++上寫一個測試程序來看看:
#include
#include
void *function(void *args)
{
while(1)
{
printf("hello world1!\n");
sleep(1);
}
}
int main(void)
{
pthread_t tid ;
tid = pthread_create(&tid , NULL , function , NULL);
while(1)
{
printf("hello world!\n");
sleep(1);
}
return 0 ;
}? ?運行結(jié)果:
我們會看到在main函數(shù)里的打印語句和在線程回調(diào)函數(shù)里打印語句在同時打印。
關(guān)于這個函數(shù)的如何使用,網(wǎng)上文章有很多講得非常的詳細,這里僅僅只是寫函數(shù)指針和回調(diào)函數(shù)的應(yīng)用,詳細可以參考這篇文章,了解進程和線程。
http://blog.csdn.net/tommy_wxie/article/details/8545253
本文同步分享在 博客“Engineer-Bruce_Yang”(CSDN)。
如有侵權(quán),請聯(lián)系 support@oschina.cn 刪除。
本文參與“OSC源創(chuàng)計劃”,歡迎正在閱讀的你也加入,一起分享。
總結(jié)
以上是生活随笔為你收集整理的c语言键盘回调函数键盘的码,深入浅出剖析C语言函数指针与回调函数(三)的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 湖北民族学院c语言试卷,C实验参考答案(
- 下一篇: anaconda能跑c语言哪,anaco