jdk

Форк
0
/
gcCause.cpp 
136 строк · 3.4 Кб
1
/*
2
 * Copyright (c) 2002, 2023, Oracle and/or its affiliates. All rights reserved.
3
 * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER.
4
 *
5
 * This code is free software; you can redistribute it and/or modify it
6
 * under the terms of the GNU General Public License version 2 only, as
7
 * published by the Free Software Foundation.
8
 *
9
 * This code is distributed in the hope that it will be useful, but WITHOUT
10
 * ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or
11
 * FITNESS FOR A PARTICULAR PURPOSE.  See the GNU General Public License
12
 * version 2 for more details (a copy is included in the LICENSE file that
13
 * accompanied this code).
14
 *
15
 * You should have received a copy of the GNU General Public License version
16
 * 2 along with this work; if not, write to the Free Software Foundation,
17
 * Inc., 51 Franklin St, Fifth Floor, Boston, MA 02110-1301 USA.
18
 *
19
 * Please contact Oracle, 500 Oracle Parkway, Redwood Shores, CA 94065 USA
20
 * or visit www.oracle.com if you need additional information or have any
21
 * questions.
22
 *
23
 */
24

25
#include "precompiled.hpp"
26
#include "gc/shared/gcCause.hpp"
27

28
const char* GCCause::to_string(GCCause::Cause cause) {
29
  switch (cause) {
30
    case _java_lang_system_gc:
31
      return "System.gc()";
32

33
    case _full_gc_alot:
34
      return "FullGCAlot";
35

36
    case _scavenge_alot:
37
      return "ScavengeAlot";
38

39
    case _allocation_profiler:
40
      return "Allocation Profiler";
41

42
    case _jvmti_force_gc:
43
      return "JvmtiEnv ForceGarbageCollection";
44

45
    case _gc_locker:
46
      return "GCLocker Initiated GC";
47

48
    case _heap_inspection:
49
      return "Heap Inspection Initiated GC";
50

51
    case _heap_dump:
52
      return "Heap Dump Initiated GC";
53

54
    case _wb_young_gc:
55
      return "WhiteBox Initiated Young GC";
56

57
    case _wb_full_gc:
58
      return "WhiteBox Initiated Full GC";
59

60
    case _wb_breakpoint:
61
      return "WhiteBox Initiated Run to Breakpoint";
62

63
    case _no_gc:
64
      return "No GC";
65

66
    case _allocation_failure:
67
      return "Allocation Failure";
68

69
    case _codecache_GC_threshold:
70
      return "CodeCache GC Threshold";
71

72
    case _codecache_GC_aggressive:
73
      return "CodeCache GC Aggressive";
74

75
    case _metadata_GC_threshold:
76
      return "Metadata GC Threshold";
77

78
    case _metadata_GC_clear_soft_refs:
79
      return "Metadata GC Clear Soft References";
80

81
    case _adaptive_size_policy:
82
      return "Ergonomics";
83

84
    case _g1_inc_collection_pause:
85
      return "G1 Evacuation Pause";
86

87
    case _g1_compaction_pause:
88
      return "G1 Compaction Pause";
89

90
    case _g1_humongous_allocation:
91
      return "G1 Humongous Allocation";
92

93
    case _g1_periodic_collection:
94
      return "G1 Periodic Collection";
95

96
    case _dcmd_gc_run:
97
      return "Diagnostic Command";
98

99
    case _shenandoah_allocation_failure_evac:
100
      return "Allocation Failure During Evacuation";
101

102
    case _shenandoah_stop_vm:
103
      return "Stopping VM";
104

105
    case _shenandoah_concurrent_gc:
106
      return "Concurrent GC";
107

108
    case _shenandoah_upgrade_to_full_gc:
109
      return "Upgrade To Full GC";
110

111
    case _z_timer:
112
      return "Timer";
113

114
    case _z_warmup:
115
      return "Warmup";
116

117
    case _z_allocation_rate:
118
      return "Allocation Rate";
119

120
    case _z_allocation_stall:
121
      return "Allocation Stall";
122

123
    case _z_proactive:
124
      return "Proactive";
125

126
    case _z_high_usage:
127
      return "High Usage";
128

129
    case _last_gc_cause:
130
      return "ILLEGAL VALUE - last gc cause - ILLEGAL VALUE";
131

132
    default:
133
      return "unknown GCCause";
134
  }
135
  ShouldNotReachHere();
136
}
137

Использование cookies

Мы используем файлы cookie в соответствии с Политикой конфиденциальности и Политикой использования cookies.

Нажимая кнопку «Принимаю», Вы даете АО «СберТех» согласие на обработку Ваших персональных данных в целях совершенствования нашего веб-сайта и Сервиса GitVerse, а также повышения удобства их использования.

Запретить использование cookies Вы можете самостоятельно в настройках Вашего браузера.