Fixed "is not GC-safe as it calls 'createThread'" when creating a thread in a thread. (#11390)
This commit is contained in:
parent
7072eaad73
commit
9d536b90c1
1 changed files with 1 additions and 1 deletions
|
|
@ -146,7 +146,7 @@ proc threadProcWrapStackFrame[TArg](thrd: ptr Thread[TArg]) =
|
||||||
when defined(boehmgc):
|
when defined(boehmgc):
|
||||||
boehmGC_call_with_stack_base(threadProcWrapDispatch[TArg], thrd)
|
boehmGC_call_with_stack_base(threadProcWrapDispatch[TArg], thrd)
|
||||||
elif not defined(nogc) and not defined(gogc) and not defined(gcRegions) and not defined(gcDestructors):
|
elif not defined(nogc) and not defined(gogc) and not defined(gcRegions) and not defined(gcDestructors):
|
||||||
var p {.volatile.}: proc(a: ptr Thread[TArg]) {.nimcall.} =
|
var p {.volatile.}: proc(a: ptr Thread[TArg]) {.nimcall, gcsafe.} =
|
||||||
threadProcWrapDispatch[TArg]
|
threadProcWrapDispatch[TArg]
|
||||||
# init the GC for refc/markandsweep
|
# init the GC for refc/markandsweep
|
||||||
nimGC_setStackBottom(addr(p))
|
nimGC_setStackBottom(addr(p))
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue