>> I get an other impression from the statements “self._threads.append(t)” 
>> (process_request)
>> and “thread.join()” (server_close).
>
>       Okay -- v3.7 has added more logic that didn't exist in the v3.5 code
> I was examining... (block_on_close is new).

Thanks for such a version comparison.


>       However, I need to point out that this logic is part of server_close(),
> which is not the same as shutdown(). You have been calling shutdown() which
> only ends the loop accepting new connections, but leaves any in-process
> threads to finish handling their requests.
>
>       server_close() needs to be called by your code, I would expect AFTER
> calling shutdown() to stop accepting new requests (and starting new threads
> which may not be in the list that the close is trying to join).

Should this aspect be taken into account by the code specification “with 
server:”?


> And after calling server_close() you will not be able to simply "restart" the 
> server
> -- you must go through the entire server initialization process
> (ie: create a whole new server instance).

This should be finally achieved by the implementation of my method 
“perform_command”.
I hope that corresponding data processing can be cleanly repeated then
as desired for test purposes.

Regards,
Markus
-- 
https://mail.python.org/mailman/listinfo/python-list

Reply via email to