10-27-2023, 06:37 AM
(This post was last modified: 10-27-2023, 07:21 AM by Alexandre Machado.)
Hi Dr. Bob,
According to your report, the scenario that you describe would fit into an hypothetical situation where the cleanup thread just dies. In theory it should never happen.
If your application is active you can use external tools (Sysinternals Process Explorer comes to mind http://technet.microsoft.com/en-us/sysinternals/bb896653.aspx ) and see if you can identify the "IW Session Timeout Thread" running (the thread is named when created). It should be. If it's not running, something is wrong.
All work that the clean up thread does is protected in try..except blocks, meaning that an exception when your session is being destroyed would never affect the normal execution of the cleanup thread (let's say that you have an AV while destroying one of your forms because something unexpected happens, the error will be "swallowed" and the thread will continue cleaning up next thing in the list). But of course, a memory corruption is not impossible, and this can change everything....
When you say you get an AV, where exactly does it happen? Do you have the call stack (the exception logger, if active, should contain all details about it).
Other than that, I'd recommend you to move to IW 15.4.2. There were many important fixes after 15.3 branch has been released...
Cheers,
According to your report, the scenario that you describe would fit into an hypothetical situation where the cleanup thread just dies. In theory it should never happen.
If your application is active you can use external tools (Sysinternals Process Explorer comes to mind http://technet.microsoft.com/en-us/sysinternals/bb896653.aspx ) and see if you can identify the "IW Session Timeout Thread" running (the thread is named when created). It should be. If it's not running, something is wrong.
All work that the clean up thread does is protected in try..except blocks, meaning that an exception when your session is being destroyed would never affect the normal execution of the cleanup thread (let's say that you have an AV while destroying one of your forms because something unexpected happens, the error will be "swallowed" and the thread will continue cleaning up next thing in the list). But of course, a memory corruption is not impossible, and this can change everything....
When you say you get an AV, where exactly does it happen? Do you have the call stack (the exception logger, if active, should contain all details about it).
Other than that, I'd recommend you to move to IW 15.4.2. There were many important fixes after 15.3 branch has been released...
Cheers,