V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
lewis89
V2EX  ›  Java

总算把周志明老师的 Safe-Point 坑给填上了

  •  
  •   lewis89 · 2020-12-19 00:10:42 +08:00 · 2428 次点击
    这是一个创建于 1436 天前的主题,其中的信息可能已经有所发展或是发生改变。
    总算把周志明老师的 Safe-Point 坑给填上了,以前读完 JVM 虚拟机之后,
    对 safe-point 控制业务线程流程的实现一直非常好奇,中间也读了 mprotect 调用相关的案例,
    因为当时内联汇编玩不转,也玩的不好,也没什么时间抽空空看文档,gdb 用的也不熟练,
    今天总算找各种资料,用 gdb + inline 汇编,各种魔改操作 rbp rsp,
    实现了拿到信号量之后,又恢复现场的方法。

    https://github.com/jonwinters/jvm-suspend-working-thread-mechanism

    小弟不才,勉强贡献上一点小资料,对 JVM 挂起业务线程( STW )的机制 做了一个小小的 demo
    第 1 条附言  ·  2020-12-20 19:39:28 +08:00
    别光点收藏不点 star 啊,老哥们
    3 条回复    2020-12-19 11:15:15 +08:00
    lewis89
        1
    lewis89  
    OP
       2020-12-19 00:55:06 +08:00 via iPhone
    赶脚写 Java 的一般也不关心 底层实现机制与原理,其实用 mprotect 可以实现很多功能 例如协程 垃圾回收停顿 等等
    Wincer
        2
    Wincer  
       2020-12-19 10:44:18 +08:00
    @lewis89 #1 虽然工作中不是很关心,但是面试的时候可由不得你不关心(🐶
    lewis89
        3
    lewis89  
    OP
       2020-12-19 11:15:15 +08:00
    @Wincer #2 哈哈,都差不多,我也是面试的时候用,自己写的时候 还是怎么快,怎么来
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   913 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 22:21 · PVG 06:21 · LAX 14:21 · JFK 17:21
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.