我创建一个struct Thread_Queue调用queueUsed的数组,并且每次调用enqueue_thread函数(thread,queue)时,我检查queueUsed是否包含该队列,如果没有,则将该队列添加到线程。我究竟做错了什么?
这是我的kthrad.h文件的一部分,enqueue_thread用于我的kthread.c文件
extern struct Thread_Queue *queueUsed[100];
static __inline__ void Enqueue_Thread(struct Thread_Queue *queue,
struct Kernel_Thread *kthread) {
Add_To_Back_Of_Thread_Queue(queue, kthread);
int x=0;
for(;x<100;x++){
if(queueUsed[x] == NULL){
queueUsed[x]=queue;
break;
}else if(queueUsed[x] == queue)
break;
}
}