You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
Copy file name to clipboardExpand all lines: docs/src/faq.md
+4Lines changed: 4 additions & 0 deletions
Original file line number
Diff line number
Diff line change
@@ -9,6 +9,10 @@ Some rules if you are writing multithreaded code:
9
9
- You probably also need to call `PythonCall.GC.disable()` on the main thread before any
10
10
threaded block of code. Remember to call `PythonCall.GC.enable()` again afterwards.
11
11
(This is because Julia finalizers can be called from any thread.)
12
+
- Julia intentionally causes segmentation faults as part of the GC safepoint mechanism.
13
+
If unhandled, these segfaults will result in termination of the process. To enable signal handling,
14
+
set `PYTHON_JULIACALL_HANDLE_SIGNALS=yes` before any calls to import juliacall. This is equivalent
15
+
to starting julia with `julia --handle-signals=yes`, the default behavior in Julia. See discussion [here](https://github.com/cjdoris/PythonCall.jl/issues/219#issuecomment-1605087024) for more information.
12
16
- You may still encounter problems.
13
17
14
18
Related issues: [#201](https://github.com/cjdoris/PythonCall.jl/issues/201), [#202](https://github.com/cjdoris/PythonCall.jl/issues/202)
0 commit comments