Global Lock.

i think this would simplify use & understanding of MATEN invocations, if there was an option for using 'Global Lock' for processes running on Stitie Machines.

it should NOT be mandatory, just an option to use or not.

single part of Stitie Space's state would determine if processes running on Stitie Machines in given Stitie Space should enter 'waiting' state until this 'Global Lock' is removed.

it should be available to be used outside MATEN as well.

perhaps it should be implemented in Stitie Space 1.2 'Satellite' or in Stitie Space 1.3 'November Rain', before writing 'Ola AH' Programming Language's Interpreter.

... or perhaps lack of 'Global Lock' can be considered as a bug in version 1.1 of Stitie Space 'Sunsail' & fixed in this version, probably that's the best option anyway ...

update, 07 VIII 2015.

as it is for now,

in Stitie Machine 1.1.35 RC 0-0-2 'Sunsail',

'Global Lock' determines who can call a given Sunsail(s) methods.

it is not about putting all threads on 'waiting' state, it's about preventing method calls on a Sunsails' group(s).

once we are sure that no one will intervene as we modify Stitie Space, we can take care of each of the Threads 'at peace', the way we prefer.

MATEN invocations can consist of two or more phases, for example:

1st phase:
 establishing 'Global Lock'.

2nd phase: managing threads:
 copying, modifying, putting on wait, whatever we need.

3rd phase:
 whatever else we need.

4rd phase:
 managing threads again, perhaps modifying & 'notifying' threads
 so they can commence with their work again.

5th phase:
 removing 'Global Lock'.

1 comment:

  1. (EN) how 'Global Lock' should be implemented ?

    ... depends on how concurrency should work in 'Ola AH'.

    i think that processes will be given 'quantum of time', quite often (small 'quantum' each time), after each there should be check if given process is on wait.

    ... but it's too early to be definite, to consider this design final.

    in Interpreter it's just Java-Dependent.