【发布时间】:2011-05-15 21:53:48
【问题描述】:
我正在使用 Linux 2.4(为我的操作系统课程做硬件), 我想使用 pthread 来实现读写器锁。 在 rw_lock.c 我有:
#include <pthread.h>
#include <stdlib.h>
#include "rw_lock.h"
struct readers_writers_t
{
int prio;
int number_of_readers;
pthread_cond_t no_readers;
int number_of_writers;
int number_of_waiting_writers;
pthread_cond_t no_writers;
pthread_mutex_t lock;
};
[functions...]
在 rw_lock.h 我有:
typedef struct readers_writers_t readers_writers;
在另一个 C 文件中(链表的实现)我有:
#include "rw_lock.h"
struct LinkedList
{
ListNode* head;
ListNode* tail;
readers_writers rwLock;
};
(and more functions,includes etc').
我得到(一个)编译错误:
“rwLock 的类型不完整”。
我不知道为什么会收到此错误(或如何修复它...)。
感谢您的帮助,谢谢!
【问题讨论】:
标签: linux pthreads incomplete-type