Dear Massimo,

first of all, thank you on working on Rivet. That is great that you give love to the baby. Unfortunately, I can not give many comments to your work, but I am sure it is great.
Thank you and take care,
Harald

Am 06.10.2020 um 23:15 schrieb Massimo Manghi:
On 10/4/20 12:06 AM, Massimo MANGHI wrote:

Rivet 3.2.0 comes with a few new features and several internal
modifications that are supposed to be transparent.

  -- Internals

* The relevant improvement with respect to 3.1 is the change in the
thread policy in the default response to the exit command. It's stressed
in several points of the manual that 'exit' (shadowed by ::rivet::exit)
is not a command to be used in regular web development, but the exit
command could be nested in third party software and it's part of the Tcl
language in the first place, so it demands meaning.

With the worker bridge 'exit' now by default terminates a single thread.
It has been noticed that some extensions don't behave well when
Tcl_InterpDelete is called, but it seems a problem pertaining specific
extension classes or specific single extensions, so there is no point in
having a more flexible embedding of Tcl for fear of stumbling in one of
them.

Setting

RivetServerConf SingleThreadExit Off

in the configuration restores the old policy of demading all threads in
a child process to exit and then calling Tcl_Exit.

The prefork bridge is unaffected.


This section of the release notes needs expansion.

The single thread exit feature is a new feature. It allows threads to
exit after releasing their resources and deleting their interpreters.
 From the point of view of the programmer this feature enables threads
in the worker bridge to behave pretty much like child process (though
the resource management is critical with threads)

We released 3.1 so long ago that I wrongly assumed the SingleThreadExit
feature was already in it. I started to work on it in a separate branch
that I merged into master after 3.1 was released.

  -- Massimo

---------------------------------------------------------------------
To unsubscribe, e-mail: rivet-dev-unsubscr...@tcl.apache.org
For additional commands, e-mail: rivet-dev-h...@tcl.apache.org

Reply via email to