• Kirill Smelkov's avatar
    tracing/runtime: Combine StopTheWorld+StartTheWorld into DoWithStoppedWorld · bf36b7a3
    Kirill Smelkov authored
    As explained in the previous patch access to runtime.stopTheWorld
    becomes infeasible since go1.23 (https://github.com/golang/go/issues/68167).
    We will still be able to hook into runtime to run arbitrary function
    under STW condition. In other words calling runtime.StopTheWorld is no
    longer possible, but calling runtime.Something(f), that stops the world,
    invokes f, and then starts the world again will be still possible.
    
    Adjust tracing/runtime to match that. Here we are ok to do this
    adjustment freely because we are changing internal subpackage of
    tracing.
    
    This patch only changes tracing/runtime API without adding go1.23 support. We
    will add support for go1.23 in the next patch.
    bf36b7a3
tracing.go 9.71 KB