Что означает "0xDEAD" в следующем коде?

Существует структура enum, но я не понимаю значения '0xDEAD - 2' в этом enum.

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

Из приведенного выше кода, какую выгоду я могу получить?

Код выше находится в 'hotspot / src / share / vm / runtime / thread.hpp' в openjdk8.

Я изучаю исходный код JDK, пожалуйста, помогите мне.

1 ответ

Решение

Это шестнадцатеричный литерал, используемый в качестве приманки для глаз (полезный в отладчиках), так что _thread_terminated значение будет 0xDEAD ("завершенная нить" равна "мертвой").

Существует множество шестнадцатеричных литералов, которые люди используют для таких вещей, как DEADBEEF из файла Jargon и так далее.

Другие вопросы по тегам