⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 liblock.c

📁 T-kernel 的extension源代码
💻 C
字号:
/* *---------------------------------------------------------------------- *    T-Kernel / Standard Extension * *    Copyright (C) 2006 by Ken Sakamura. All rights reserved. *    T-Kernel / Standard Extension is distributed  *      under the T-License for T-Kernel / Standard Extension. *---------------------------------------------------------------------- * *    Version:   1.00.00 *    Released by T-Engine Forum(http://www.t-engine.org) at 2006/8/11. * *---------------------------------------------------------------------- *//* *	liblock.c (libtkse) * *	Exclusive control lock shared in libraries */#include <basic.h>#include <tk/typedef.h>#include <sys/libs.h>#include <extension/tkcall.h>#include <extension/util.h>#include <extension/errno.h>LOCAL	BFastLock	LibLock;EXPORT ER _init_liblock( void ){	if ( !_isUseMT() ) {		return E_OK;	}	return CreateBLock(&LibLock);}EXPORT ER _lib_locktmo( W lockno, W tmo, BOOL ignore_mintr ){	ER	err = E_OK;	if ( !_isUseMT() ) {		return err;	}	do {		err = BMLockTmo(&LibLock, lockno, tmo);	} while (( err == E_DISWAI) && !ignore_mintr );	return err;}EXPORT ER _lib_lock( W lockno, BOOL ignore_mintr ){	return _lib_locktmo(lockno, T_FOREVER, ignore_mintr);}EXPORT void _lib_unlock( W lockno ){	if ( !_isUseMT() ) {		return;	}	(void)BMUnlock(&LibLock, lockno);}

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -