|
|
|
|
|
by 15155
3660 days ago
|
|
> Compare the cost of optimally, expertly built STM-using code to, say, just assigning some byte values in a *char array This is comparing the wrong tasks. Apples and oranges. STM is usable for this particular task, but will almost assuredly be far slower. If performing the exact same task in Haskell, you could use IO and mutable memory for comparison. Where STM really shines, however, is in highly-concurrent environments. There's no great "C comparison" for hundreds of concurrent operations locklessly reading/writing to/from the same memory. STM makes this safe and performant without a change in semantics or additional mental overhead from the "non-concurrent" case. |
|