| Commit message (Collapse) | Author | Age | Files | Lines |
| |
|
| |
|
|
|
|
|
| |
Prior to this, the unit test was flaky, especially when running the test
suite concurrently, as test setup could take more than 0.5 s.
|
|
|
|
|
|
|
|
|
| |
This restores past behavior where the scheduler catches exceptions
raised in block threads, allowing flowgraphs to continue running after
the failure of an individual block. It also adds optional new behavior,
selected by setting catch_exceptions=False to the top block, which causes
exceptions to not be caught. In this mode of operation, a std::terminate
handler can be installed to print a stack trace before the flowgraph exits.
|
|
This commit removes the catch statements from thread_body_wrapper.h.
The reason to do this is that, as-is, a single block in a flowgraph
may throw an exception and stop functioning, but the only indication
of this to the user is printing the exception's what() to stderr.
With this patch, any uncaught exception will call std::terminate,
which should still print the exception's what(), but will also
terminate the process, rather than leaving a zombie flowgraph.
|