[APP][Pro] Semaphore [Abandoned]

Good question;) My basic idea was the following:

  1. there is a global “locked” variable in the app. This is one is not specially guarded for concurrency but it can only be changed with the flow cards
  2. all code that changes the value of this variable is protected against racing conditions by a third party library.
  3. the condition card checks the value of the locked variable (protected code). If it is unlocked we lock it and continue. Otherwise we leave the critical path and wait and try again later.
1 Like