How do you know what to pin? You need a snapshot of all the thread's stacks, or a conservative approximation. Doing that w/o blocking needs a *stack* write barrier. Just taking consecutive snapshots could lose a root that moved from stack #2 to stack #1.
-
-
-
The code generator could produce explicit lock inc [http://obj.pin ] / lock dec [http://obj.pin ] for all stack references.
- 6 more replies
New conversation -
-
-
Because scanning just the stack is very fast and the throughput costs for pinning can be quite high.
-
A tight loop with a changing reference on the stack ends up being dominated by pinning costs.
- 5 more replies
New conversation -
-
-
Be honest. Have you ever met a garbage collector that you liked? I sure haven't. They always eat processing time just when it's most needed.
-
Well, no, but I’d like it very much if it could be reduced to a bearable. Instant overhead, like the cost of other acceptable abstractions.
End of conversation
New conversation -
-
-
Um, same reason all tools suck?
-
Because they are written hastily and without being tested on a real use case?
- 2 more replies
New conversation -
-
-
Stack, Pause and GC sound so wrong when used in a single sentence.

-

Haven't seen GO architecture but it sounds awkward
End of conversation
New conversation -
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.