another multi-user "solution"?

Rob Cozens rcozens at pon.net
Mon Apr 25 14:59:52 EDT 2005


Hi Dan,

>Second, using the semaphore file approach that Jacque suggested is 
>eminently doable and quite simple to implement. It would be pretty easy, 
>e.g., to have a single file that just contained a list of all the card 
>numbers currently open for editing and checking it before allowing a user 
>to edit a card's contents. Equally easy and perhaps a little better from a 
>robustness perspective would be to create a text file called, e.g., 
>card.lok, where card is the name or ID of the card, for a card when it's 
>opened for editing and then deleting that file when the user's done. In 
>either case, a pretty simple command could check to ensure the card the 
>user asks to edit isn't already being edited and take some appropriate action.

Question:

How do changes on individual cards in different copies of a stack in each 
user's RAM get made to the copy resident on disk?  There is not, to my 
knowledge, a way to save changes on one card of a stack without overwriting 
the entire stack.  So if I open a stack before you, Jacque, and Kurt do, 
wait until you all close the stack, and then save it, the only changes to 
the original stack will be mine.  You need to take it the extra step the 
Rob Eppich took EPSI-Talk, and have each users' copy of the stack updated 
whenever anyone else makes a change.  This was more feasible in HyperTalk 
than Transcript, me thinks.

One advantage of a client-server design is record locking tables can reside 
in the server's RAM; so no disk files are necessary and all records are 
automatically unlocked when the server shuts down.

Rob Cozens CCW
Serendipity Software Company

"And I, which was two fooles, do so grow three;
  Who are a little wise, the best fooles bee."

  from "The Triple Foole" by John Donne (1572-1631) 



More information about the use-livecode mailing list