I'm revisiting my thread of last week with the same results: I have a master
table of idnos that my app must process. The app looks for a record that has
a processed flag set to false and rlocks() the record, if it fails to get
the rlock(), it moves on to another record and repeats this procedure until
it finds a rec it can rlock(). The purpose of this activity is to prevent a
given idno from be processed multiple times. Unfortunately, when I run
multiple instances of the app on a *single* work station, the rlock is
ignored and all instances find and process the same idno. I've verified that
multilocks in on, and that I'm not moving the record pointer. Is it possible
that the rlock() is owned by the workstation rather than the application
instances that are running on the workstation (ie once one instance has an
rlock(), all instances automatically share it)?
My old, DOS-like method of creating a low level 'flag' file with
fcreate() and testing for file handle > 0 works fine.
-Lew