https://github.com/JuliaLang/julia
Raw File
Tip revision: 735729f28a5ed461e119d5ce40ff9a2a2c0644fd authored by d-netto on 08 December 2023, 17:54:15 UTC
create separate object pools for compiler types
Tip revision: 735729f
channel_threadpool.jl
# This file is a part of Julia. License is MIT: https://julialang.org/license

using Test
using Base.Threads

@testset "Task threadpools" begin
    c = Channel{Symbol}() do c; put!(c, threadpool(current_task())); end
    @test take!(c) === threadpool(current_task())
    c = Channel{Symbol}(spawn = true) do c; put!(c, threadpool(current_task())); end
    @test take!(c) === :default
    c = Channel{Symbol}(threadpool = :interactive) do c; put!(c, threadpool(current_task())); end
    @test take!(c) === :interactive
    @test_throws ArgumentError Channel{Symbol}(threadpool = :foo) do c; put!(c, :foo); end
end
back to top