thread184-213744
The above thread came up when I Google-searched my question "how is vfp record locking implemented", but it's locked, so I can't piggyback directly, and it didn't answer my question.
I don't really have a "server", but have several stations and the data is on one of them. Obviously, VFPOLEDB is running on each one, but I don't see how they can talk to each other.
If I lock a record from one station, how can some other station have a failed lock attempt on that record, that is, how can IT know that the 1st station has it locked? For simplicity, say all PCs are WinXP. Is there some invisible entity on the hosting XP that manages everyone who might be trying to lock a record?
The corollary question to this is, lets say I have a record locked for awhile. Then 3 other stations start waiting to lock that record. ("set reprocess to 0, x=rlock()") Will the XP station that is hosting the file somehow allow one of the other 3 stations *and only one* to get their lock without causing any kind of hiccup to the remaining stations waiting? Will the lock successes be handed out in first-come first-serve fashion til all have each had their own successful lock?
I'm having a hard time grasping how VFPOLEDB running on all can talk to each other at all, and not have the scenario where when 1st lock is released, two waiting ones are tied for getting in, but only gets in and the other crashes instead being forced to wait.
Some of this is very hard to test, therefore I'm asking you experts.
(Btw, I'm writing in C#.net 2008, not native VFP.)
The above thread came up when I Google-searched my question "how is vfp record locking implemented", but it's locked, so I can't piggyback directly, and it didn't answer my question.
I don't really have a "server", but have several stations and the data is on one of them. Obviously, VFPOLEDB is running on each one, but I don't see how they can talk to each other.
If I lock a record from one station, how can some other station have a failed lock attempt on that record, that is, how can IT know that the 1st station has it locked? For simplicity, say all PCs are WinXP. Is there some invisible entity on the hosting XP that manages everyone who might be trying to lock a record?
The corollary question to this is, lets say I have a record locked for awhile. Then 3 other stations start waiting to lock that record. ("set reprocess to 0, x=rlock()") Will the XP station that is hosting the file somehow allow one of the other 3 stations *and only one* to get their lock without causing any kind of hiccup to the remaining stations waiting? Will the lock successes be handed out in first-come first-serve fashion til all have each had their own successful lock?
I'm having a hard time grasping how VFPOLEDB running on all can talk to each other at all, and not have the scenario where when 1st lock is released, two waiting ones are tied for getting in, but only gets in and the other crashes instead being forced to wait.
Some of this is very hard to test, therefore I'm asking you experts.
(Btw, I'm writing in C#.net 2008, not native VFP.)