我正在设计重制俄罗斯方块,需要一个与输入函数同时运行的计时器函数。我正在使用 pthreads 来实现这一点,但是当我调用
pthread_create(&timer, NULL, Timer(), NULL);
pthread_create()
我收到一个错误,声称尽管包含<pthread.h>
在我的标题中,但没有匹配的调用函数。
我注意到另一个人在这里问了几乎相同的问题。但是,我设法在另一台计算机上成功地创建了 pthread,而没有做任何建议给那个人的事情。
以下是我遇到问题的源代码。我不是要求你重写它,而是告诉我出了什么问题。我将进行研究以修复我的代码。
#include <pthread.h>
#include <iostream>
#include <time.h>
void *Timer(void) { //I have tried moving the asterisk to pretty much every
//possible position and with multiple asterisks. Nothing works
time_t time1, time2;
time1 = time(NULL);
while (time2 - time1 <= 1) {
time2 = time(NULL);
}
pthread_exit(NULL);
}
int main() {
pthread_t inputTimer;
pthread_create(&inputTimer, NULL, Timer(), NULL); //Error here
return 0;
}
谢谢