odm_lock 子例程

用途

对请求的路径名进行互斥锁定。

对象数据管理器库libodm.a)

语法

#include <odmi.h>
int odm_lock ( LockPath TimeOut)
char *LockPath;
int TimeOut;

描述

odm_lock子程序用于阻止其他应用程序或方法访问对象类或对象类组。 对目录路径名的锁定不会阻止另一个应用程序获取对该目录中某个子目录或对象类的锁定。

注: 锁定的协调是访问对象类的应用程序的职责。

odm_lock子程序会返回一个锁标识符,用于调用odm_unlock子程序。

参数

描述
LockPath 指定一个字符串,该字符串包含要在其中查找对象类的文件系统中的路径名或要锁定的对象类的路径名。
TimeOut 指定在另一个应用程序或方法对请求的一个或多个对象类保持锁定时等待的时间量 (以秒计)。 TimeOut 参数的可能值为:
TimeOut = ODM_NOWAIT
如果不能立即授予锁,odm_lock子程序就会失败。
TimeOut = 整数
odm_lock子程序会等待指定的秒数,以重试未成功的锁定请求。
TimeOut = ODM_WAIT
odm_lock子程序会等待被锁定的路径名从当前锁定中释放出来,然后将其锁定。

返回值

成功完成后,将返回锁定标识。 如果odm_lock子程序执行不成功,则返回值为-1并将odmerrno变量设置为错误代码。

错误代码

odm_lock子程序的失败会将odmerrno变量设置为下列错误代码之一:

有关ODM错误代码的解释,请参见../bostechref/odm_error_codes.html