5

有一个枚举结构,但我不明白这个枚举中'0xDEAD - 2'的含义。

enum TerminatedTypes {
    _not_terminated = 0xDEAD - 2,
    _thread_exiting,                            
    _thread_terminated,                          
    _vm_exited                                   
};

从上面的代码,我能得到什么样的好处?

上面的代码在 openjdk8 的 'hotspot/src/share/vm/runtime/thread.hpp' 中。

我正在研究jdk的源代码,请帮助我。

4

1 回答 1

12

它是一个十六进制文字,用作引人注目的(在调试器中很有用),因此_thread_terminated值将是0xDEAD(“终止线程”等于“死”)。

人们使用大量的十六进制文字来处理类似的事情,例如DEADBEEF来自行话文件等。

于 2014-09-09T02:27:27.307 回答