MAC內核編程指南-同步原語

Synchronization Primitives

(一)Mutexes的應用

  我在之前的blog中簡單的提了提MAC的三種鎖,今天在這着重說說mutexes的使用,也只有這方面我有點經驗。先貼例子,再解釋
lck_grp_attr_t *tz_slock_grp_attr;
lck_grp_t *tz_slock_grp;
lck_attr_t *tz_slock_attr;
lck_mtx_t *tz_slock;
 
/* allocate lock group attribute and group */
tz_slock_grp_attr = lck_grp_attr_alloc_init();
lck_grp_attr_setstat(tz_slock_grp_attr);
 
tz_slock_grp =  lck_grp_alloc_init("tzlock", tz_slock_grp_attr);
 
/* Allocate lock attribute */
tz_slock_attr = lck_attr_alloc_init();
//lck_attr_setdebug(tz_slock_attr); // set the debug flag
//lck_attr_setdefault(tz_slock_attr); // clear the debug flag
 
/* Allocate the mutex lock */
tz_slock = lck_mtx_alloc_init(tz_slock_grp, tz_slock_attr);

首先是申明兩個grp、attr對象,然後利用這兩個對象來做mutex的初始化。

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章