concurrency - Scala: How is Barrier Synchronization implemented? -


Anyone have any idea that barrier synchronization has been implemented internally? I'm guessing that this is using semaphaurus , but I'm wondering how does it actually work, do anyone know?

I think a Samphar can create an array for each process in a simple way to consider it. Any better / more efficient implementation?

OK, sorry for this people, I've found it after all. Here is the case that anyone is interested.

  class barrier (n: it) {emphasis (nacety; 1); Private Enough = 0; // Waiting for the number of procedures currently waiting for the private val wa = new semaphore; WaitSem.down Personal Val mutex = new semaphore; Def Sync = {Mute x Down; If (wait == N -1) {waitSem.up; } And {wait + = 1; Mutex.up; WaitSem.down; Wait until wait -1 = 1; If (wait == 0) mutex.up; And wait em.up; }}}    

Comments