Support to multi-threading and pthread interface (POSIX.1-2008) (#23)
[lunaix-os.git] / lunaix-os / includes / lunaix / ds / waitq.h
index dfeb7c377893cdae489521b7c93f6cd8b7c23d29..efcc808eeff3ec0fad96325beb3d5af9c22a7008 100644 (file)
@@ -8,12 +8,24 @@ typedef struct waitq
     struct llist_header waiters;
 } waitq_t;
 
     struct llist_header waiters;
 } waitq_t;
 
-inline void
+static inline void
 waitq_init(waitq_t* waitq)
 {
     llist_init_head(&waitq->waiters);
 }
 
 waitq_init(waitq_t* waitq)
 {
     llist_init_head(&waitq->waiters);
 }
 
+static inline int
+waitq_empty(waitq_t* waitq)
+{
+    return llist_empty(&waitq->waiters);
+}
+
+static inline void
+waitq_cancel_wait(waitq_t* waitq)
+{
+    llist_delete(&waitq->waiters);
+}
+
 void
 pwait(waitq_t* queue);
 
 void
 pwait(waitq_t* queue);