utils_gthread: add APIs to use GRecMutex 00/304500/2
authorJoonbum Ko <joonbum.ko@samsung.com>
Fri, 12 Jan 2024 11:37:21 +0000 (20:37 +0900)
committerJoonbum Ko <joonbum.ko@samsung.com>
Thu, 18 Jan 2024 07:24:32 +0000 (16:24 +0900)
Change-Id: I4a6931f756d33658a332b9579a6dd0d42321c655
Signed-off-by: Joonbum Ko <joonbum.ko@samsung.com>
src/tpl_utils_gthread.c
src/tpl_utils_gthread.h

index 2e46ee4..54cd2b6 100644 (file)
@@ -444,6 +444,30 @@ tpl_gmutex_unlock(tpl_gmutex *gmutex)
 }
 
 void
+tpl_gmutex_rec_init(tpl_gmutex_rec *gmutex_rec)
+{
+       g_rec_mutex_init(gmutex_rec);
+}
+
+void
+tpl_gmutex_rec_clear(tpl_gmutex_rec *gmutex_rec)
+{
+       g_rec_mutex_clear(gmutex_rec);
+}
+
+void
+tpl_gmutex_rec_lock(tpl_gmutex_rec *gmutex_rec)
+{
+       g_rec_mutex_lock(gmutex_rec);
+}
+
+void
+tpl_gmutex_rec_unlock(tpl_gmutex_rec *gmutex_rec)
+{
+       g_rec_mutex_unlock(gmutex_rec);
+}
+
+void
 tpl_gcond_init(tpl_gcond *gcond)
 {
        g_cond_init(gcond);
index 2c1eee6..40954c0 100644 (file)
@@ -17,6 +17,7 @@ typedef int (*tpl_gsource_func) (void *user_data);
 
 typedef GMutex tpl_gmutex;
 typedef GCond tpl_gcond;
+typedef GRecMutex tpl_gmutex_rec;
 
 typedef enum {
        FD_TYPE_NONE = -1, /* not specified */
@@ -167,6 +168,38 @@ void
 tpl_gmutex_unlock(tpl_gmutex *gmutex);
 
 /**
+ * wrapping g_rec_mutex_init()
+ *
+ * @param gmutex_rec Pointer to tpl_gmutex_rec.
+ */
+void
+tpl_gmutex_rec_init(tpl_gmutex_rec *gmutex_rec);
+
+/**
+ * wrapping g_rec_mutex_clear()
+ *
+ * @param gmutex_rec Pointer to tpl_gmutex_rec.
+ */
+void
+tpl_gmutex_rec_clear(tpl_gmutex_rec *gmutex_rec);
+
+/**
+ * wrapping g_rec_mutex_lock()
+ *
+ * @param gmutex_rec Pointer to tpl_gmutex_rec.
+ */
+void
+tpl_gmutex_rec_lock(tpl_gmutex_rec *gmutex_rec);
+
+/**
+ * wrapping g_rec_mutex_unlock()
+ *
+ * @param gmutex_rec Pointer to tpl_gmutex_rec.
+ */
+void
+tpl_gmutex_rec_unlock(tpl_gmutex_rec *gmutex_rec);
+
+/**
  * wrapping g_cond_init()
  *
  * @param gcond Pointer to tpl_gcond.