#23 reliably trigger "(scan)" output

开启中
themusicgod16 年之前创建 · 1 条评论

// - disable automatic GC with runtime.SetGCPercent(-1) // - a goroutine with a large number of items in the stack // - large heap to make the scanning process slow enough // - trigger a manual GC with go runtime.GC() // - panic in the meantime // This would still not be deterministic.

in main.go

// - disable automatic GC with runtime.SetGCPercent(-1) // - a goroutine with a large number of items in the stack // - large heap to make the scanning process slow enough // - trigger a manual GC with go runtime.GC() // - panic in the meantime // This would still not be deterministic. in main.go
Jeff Cliff 评论于 5 年之前
所有者

I think what this means is crashing in a new way 'scan' that

  • turns off automatic garbage collection
  • makes a large stack
  • makes a large heap
  • trigger garbage collection
  • panic

in such a way as to guarantee ...the panic happen while the GC is ongoing? the panic happen at a particular part of the GC process?

It's almost like they want a hook to execute as part of GC process, like a custom GC? It seems this is underspecified (is it OK if it just hits the GC process at some point?) it sounds like it's not.

I think what this means is crashing in a new way 'scan' that * turns off automatic garbage collection * makes a large stack * makes a large heap * trigger garbage collection * panic in such a way as to guarantee ...the panic happen while the GC is ongoing? the panic happen at a particular part of the GC process? It's almost like they want a hook to execute as part of GC process, like a custom GC? It seems this is underspecified (is it OK if it just hits the GC process at some point?) it sounds like it's not.
登录 并参与到对话中。
未选择里程碑
未指派成员
1 名参与者
正在加载...
取消
保存
这个人很懒,什么都没留下。