Open predicative opened 4 years ago
@KyleFromKitware might know something about the interpreter embedding.
AFIK, the scheduler config block was always required for Python 2.x I don't know if this helps or not.
I attempted to use Python 3.8 and 3.10, and both required the python scheduler, unlike Python3.6 where the C++ or python scheduler work.
I also attempted a pybind11 upgrade which had no affect on behavior
The simple pipeline file at the end of this post (adapted from
example_pydetector_on_image.pipe
;image_list.txt
is the file in that folder) runs to completion with Python 3.6, but not Python 3.7, where it blocks and must be killed. However, if the blockis added to the file, it runs to completion on Python 3.7. Adding some logging to
simple_image_detector.py
shows that aSimpleImageDetector
is initialized (__init__
) and configured (set_configuration
), but itsdetect
method is never called. Changing to 3.6 or adding the above block showsdetect
being called the appropriate number of times.The pybind11 version is 2.2.1 from Fletch (which is nearly 2.5 years old! The current version is 2.4.3 from October). GCC is version 9.2.1. Let me know if any other version information is relevant.
@as6520, @Erotemic, do you know who's familiar with the (Python) scheduler and interpreter embedding?
example.pipe
: