in reply to Re^37: Why is EO undefined? (More details!)
in thread Why is the execution order of subexpressions undefined?
The runtime doesn't need to figure anything out.
If both operands to any, non-serialising, binary operator are non-simple variables (there'd be no chance for concurrency if either is), and the methods which produce those operands are marked (by their authors) as being parallelisable, then the runtime can parallelise them.
The very fact that they are parallelisable and the programmer has placed them within the same (simple)expression, either side of a non-serialising operator, means that the runtime can call the threaded versions of both methods and wait for them both to complete before continuing.
But, for that to be workable, the programmer must be able to guarentee the execution order of the derivation of any parameters that will be passed to those two methods.
|
|---|
| Replies are listed 'Best First'. | |
|---|---|
|
Re^39: Why is EO undefined? (More details!)
by Anonymous Monk on Apr 18, 2005 at 15:01 UTC | |
by Anonymous Monk on Apr 18, 2005 at 15:14 UTC | |
by BrowserUk (Patriarch) on Apr 18, 2005 at 15:44 UTC | |
by Anonymous Monk on Apr 18, 2005 at 15:59 UTC | |
by Anonymous Monk on Apr 18, 2005 at 16:15 UTC | |
| |
by BrowserUk (Patriarch) on Apr 18, 2005 at 19:51 UTC |