4 ms·
Care to elaborate? Specifically, what mechanisms are used for handling conflicts (two withdrawals from the same bank account), and what mechanisms are available
by _yosefk 13y ago
Care to elaborate? Specifically, what mechanisms are used for handling conflicts (two withdrawals from the same bank account), and what mechanisms are available for preventing/detecting conflicts (two tasks modify the same array index)?
- chaostheory 13y agoAkka is an actor model concurrency library (so instead of threads and locks -they are abstracted away- you pass immutable messages between actor objects which are managed by other actors with queues - there are locks though if you really need them) for scala and java that just happens to use the same interface (more or less) for distributing work between different nodes. It's a tool for both. I don't know of anything else like it. http://doc.akka.io/docs/akka/2.0.1/scala/transactors.html http://doc.akka.io/docs/akka/2.0.1/scala/transactors.html
- _yosefk 13y agoOK, so I'm seeing the usual concurrency stuff; what I'm not seeing is conflict detection/prevention for parallel stuff, where you don't let two parallel tasks modify the same array element or some such.
- chaostheory 13y ago> what I'm not seeing is conflict detection/prevention for parallel stuff, where you don't let two parallel tasks modify the same array element or some such I could be wrong but based on your own article, that doesn't sound like a parallel task. Aren't parallel tasks already assigned work that don't conflict ala map reduce? > "concurrency is dealing with inevitable timing-related conflicts, parallelism is avoiding unnecessary conflicts" did I miss something?
- _yosefk 13y agoYeah, the question is what if you have a bug - if you thought you were assigning work so that tasks don't conflict but in fact they do. In Map/Reduce you technically can't have this sort of bug, nor can you have it in pure code; restricting the programmer so that such bugs can not be committed is fair enough. If it is in fact possible to have such bugs, as it is with shared mutable memory, then I expect to see tools for finding such bugs.
- chaostheory 13y ago>If it is in fact possible to have such bugs, as it is with shared mutable memory, then I expect to see tools for finding such bugs. Well with the actor model, it is less likely since you're supposed to be passing immutable messages around and you're not coordinating threads around locked resources.