Problem deactivating channel on bad connections (race condition?)

Hallo Remobjects teams,

I’m using troSynapseSuperchannel with autoreconnect=false.

If the internet connection is of low quality, I regularly get eROTimeout or eRoSuperChannelException exceptions whilst communicating.

That itself is as expected, and if such an exception happens I simply set “Channel.Active=FALSE” and only after a minute or so, I re-activate the channel and try again.

But occasionally something fatal happens, and I only found out about this by checking my log files:

Whilst TROBaseSuperChannel.SetActive(False) is still executing, an OnConnected (!) event is triggered and the SetActive method never returns. As far as I can see, it hangs forever.

Hi,

is it possible to get callstack for this case?
as I understand, it is happened only with low quality channel

Hi Evgeny,

unfortunately not, it is a Windows service with hundreds of worker threads. It happens roughly once a week. The service has a web interface which I can use to inspect the status and kill/recreate broken threads. It is bothering us because when it happens, it is often at night and then we get support calls from customers.