You are viewing a plain text version of this content. The canonical link for it is here.
Posted to dev@edgent.apache.org by "Daniel John Debrunner (JIRA)" <ji...@apache.org> on 2016/07/26 00:38:20 UTC
[jira] [Created] (QUARKS-238) Define function visibility rules and
optimize generate
Daniel John Debrunner created QUARKS-238:
--------------------------------------------
Summary: Define function visibility rules and optimize generate
Key: QUARKS-238
URL: https://issues.apache.org/jira/browse/QUARKS-238
Project: Quarks
Issue Type: Improvement
Components: API
Reporter: Daniel John Debrunner
Assignee: Daniel John Debrunner
When executing functions Edgent ensures that any execution of the function's method "happens-after" a previous execution. This provides rules for Memory consistency effects (Java memory model).
In most cases this allows the lambda expression or function class to not have to deal with synchronization issues, thus making development easier. This is similar to how an ExecutorService defines it's memory consistency.
This needs to be documented.
Then this is implemented by attempting to see if the function's implementation class needs synchronization, see if it is immutable. In some cases we create a synchronized version of the function when there is no need, e.g. generate() where a single thread is executing the function.
--
This message was sent by Atlassian JIRA
(v6.3.4#6332)