From: Andrew Tridgell Date: Mon, 16 Apr 2007 23:14:52 +0000 (+1000) Subject: add an explanation of how to use ctdb_lockwait() X-Git-Tag: tevent-0.9.20~348^2~2912 X-Git-Url: http://git.ipfire.org/gitweb.cgi?a=commitdiff_plain;h=a024989597444aabc3a44da99c5e6828236cba3f;p=thirdparty%2Fsamba.git add an explanation of how to use ctdb_lockwait() (This used to be ctdb commit e0c9844ea6270ff506b0b5906aa6ccfcc3bcce7a) --- diff --git a/ctdb/common/ctdb_lockwait.c b/ctdb/common/ctdb_lockwait.c index 6d733155e4a..304a0a413ea 100644 --- a/ctdb/common/ctdb_lockwait.c +++ b/ctdb/common/ctdb_lockwait.c @@ -59,7 +59,16 @@ static int lockwait_destructor(struct lockwait_handle *h) return 0; } - +/* + setup a non-blocking chainlock on a tdb record. If this function + returns NULL then it could not get the chainlock. Otherwise it + returns a opaque handle, and will call callback() once it has + managed to get the chainlock. You can cancel it by using talloc_free + on the returned handle. + + It is the callers responsibility to unlock the chainlock once + acquired + */ struct lockwait_handle *ctdb_lockwait(struct ctdb_db_context *ctdb_db, TDB_DATA key, void (*callback)(void *), void *private_data)