Nothing has really changed. The wording in n3290 is:
If no matching handler is found, the function std::terminate()
is called
The behavior of terminate
can be customized with set_terminate
, but:
Required behavior: A terminate_handler
shall terminate execution of the program without returning to the caller.
So the program exits in such a case, other threads cannot continue running.
与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…