Skip to content

Commit 76a3b18

Browse files
make _min_enabled_level Threads.Atomic
1 parent 9e3d785 commit 76a3b18

File tree

1 file changed

+3
-2
lines changed

1 file changed

+3
-2
lines changed

base/logging/logging.jl

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -132,6 +132,7 @@ isless(a::LogLevel, b::LogLevel) = isless(a.level, b.level)
132132
+(level::LogLevel, inc::Integer) = LogLevel(level.level+inc)
133133
-(level::LogLevel, inc::Integer) = LogLevel(level.level-inc)
134134
convert(::Type{LogLevel}, level::Integer) = LogLevel(level)
135+
convert(::Type{Int32}, level::LogLevel) = level.level
135136

136137
"""
137138
BelowMinLevel
@@ -171,7 +172,7 @@ Alias for [`LogLevel(1_000_001)`](@ref LogLevel).
171172
const AboveMaxLevel = LogLevel( 1000001)
172173

173174
# Global log limiting mechanism for super fast but inflexible global log limiting.
174-
const _min_enabled_level = Ref{LogLevel}(Debug)
175+
const _min_enabled_level = Threads.Atomic{Int32}(Debug)
175176

176177
function show(io::IO, level::LogLevel)
177178
if level == BelowMinLevel print(io, "BelowMinLevel")
@@ -394,7 +395,7 @@ function logmsg_code(_module, file, line, level, message, exs...)
394395
level = $level
395396
# simplify std_level code emitted, if we know it is one of our global constants
396397
std_level = $(level isa Symbol ? :level : :(level isa $LogLevel ? level : convert($LogLevel, level)::$LogLevel))
397-
if std_level >= $(_min_enabled_level)[]
398+
if std_level.level >= $(_min_enabled_level)[]
398399
group = $(log_data._group)
399400
_module = $(log_data._module)
400401
logger = $(current_logger_for_env)(std_level, group, _module)

0 commit comments

Comments
 (0)