ugh, how can i manage potentially poorly behaving threads?
frymaster joined the channel
asdf
ashleyk__, in general, you can't kill a thread the way you would kill a process. If you have some user code that needs to be possibly killed, subprocessing it is the way to go
in your own code, you can try and structure your threads so that they never block an indefinite amount of time, and that they can receive a message from outside telling them to exit..
ashleyk__
asdf, its a blocking python library code, but i do need the ability to kill it if it goes off the rails, otherwise it hink eventually i run out of file descriptors
clokep joined the channel
i dont think its behaving badly like that, i just have a feeling they can get stuck and not exit for whatever reason
asdf
well, no general solution for it unfortunately
runciter
what's the library
ashleyk__
iperf3
i need to do more testing, but i was seeing file descriptor errors this morning
runciter
it has python bindings?
ashleyk__
and i see 'client.py's running after killing my processes
and when i kill them, they dump i perf data to console
it has iperf3 module
i dont think there is a timeout option i can use though
other than that it runs great and my client responds to pings during my deferToThread
runciter, so a subprocess means a different executable?
as opposed to python code
or a seperate python executable
itamarst joined the channel
meejah
ashleyk__: i believe runciter means "run in another python process" (instead of a thread)
ashleyk__
oh...
nopf joined the channel
kenaan
adiroiban submitted <https://tm.tl/#9288> - Don't raise AlreadyCalled in Request.getSession when the previous session has expired. (unassigned) for review