From ace4e5a9f68690eb006b9ee736bc1db68e9cb5fc Mon Sep 17 00:00:00 2001 From: Marty Kraimer Date: Wed, 4 Dec 2002 14:37:21 +0000 Subject: [PATCH] epicsMutexLockWithTimeout no longer exists --- src/db/dbLock.c | 9 +++++++-- src/db/dbNotify.c | 7 ++++++- 2 files changed, 13 insertions(+), 3 deletions(-) diff --git a/src/db/dbLock.c b/src/db/dbLock.c index 3e36a5d49..47f6be68d 100644 --- a/src/db/dbLock.c +++ b/src/db/dbLock.c @@ -552,13 +552,18 @@ long epicsShareAPI dbLockShowLocked(int level) int indListType; lockSet *plockSet; epicsMutexLockStatus status; - epicsMutexLockStatus lockSetModifyLockStatus; + epicsMutexLockStatus lockSetModifyLockStatus = epicsMutexLockOK; + int itry; printf("listTypeScanLock %d listTypeRecordLock %d listTypeFree %d\n", ellCount(&lockSetList[0]), ellCount(&lockSetList[1]), ellCount(&lockSetList[2])); - lockSetModifyLockStatus = epicsMutexLockWithTimeout(lockSetModifyLock,5.0); + for(itry=0; itry<100; itry++) { + lockSetModifyLockStatus = epicsMutexTryLock(lockSetModifyLock); + if(lockSetModifyLockStatus==epicsMutexLockOK) break; + epicsThreadSleep(.05); + } if(lockSetModifyLockStatus!=epicsMutexLockOK) { printf("Could not lock lockSetModifyLock\n"); epicsMutexShow(lockSetModifyLock,level); diff --git a/src/db/dbNotify.c b/src/db/dbNotify.c index b35fa7d41..d31a6b564 100644 --- a/src/db/dbNotify.c +++ b/src/db/dbNotify.c @@ -390,9 +390,14 @@ int epicsShareAPI dbNotifyDump(void) putNotify *ppn; putNotify *ppnRestart; putNotifyRecord *ppnrWait; + int itry; - lockStatus = epicsMutexLockWithTimeout(notifyLock,2.0); + for(itry=0; itry<100; itry++) { + lockStatus = epicsMutexTryLock(notifyLock); + if(lockStatus==epicsMutexLockOK) break; + epicsThreadSleep(.05); + } for(pdbRecordType = (dbRecordType *)ellFirst(&pdbbase->recordTypeList); pdbRecordType; pdbRecordType = (dbRecordType *)ellNext(&pdbRecordType->node)) {