New graceful-first terminate feature with wait dialog

Started by Jeremy Collake, April 05, 2015, 05:55:36 PM

Previous topic - Next topic

Jeremy Collake

For now, since no major modifications can be allowed to a stable branch, I've added the timeout to the registry.

You would create the registry value:

HKEY_LOCAL_MACHINE\Software\ProcessLasso
GracefulWaitMs
Type: DWORD

In Milliseconds, as the name implies. The default is 8000 (8 seconds). If it doesn't exist, this default value is used.

All future builds should adhere to this value (8.0.2.2 and beyond). They will wait x milliseconds before forcefully terminating the process.

This includes process restarts.
Software Engineer. Bitsum LLC.

chris635

Chris

Jeremy Collake

Software Engineer. Bitsum LLC.

Jeremy Collake

Quote from: chris635 on April 05, 2015, 06:37:27 PM
What was the reason for going this route?

Temporary hack to avoid major changes to the stable branch.

By the next major release, this setting will be in the UI and INI file with the others. This is just a temporary hack to appease current customers that need to adjust this value. These decisions are best left to the developer (what should be changed in minor updates). I know what is safe, easy, etc... and what is hard and potentially problematic. Adding it to the UI not only requires lots of new code, but new translations, etc...
Software Engineer. Bitsum LLC.

Jeremy Collake

I am rethinking this, after getting feedback from confused users. What I may do is, at the very least, throw up a dialog saying "We're trying to terminate this process..." , so the user knows what is going on while the graceful termination is attempted.

It's also likely I'll go ahead and add a timeout setting to the UI (already in the INI).
Software Engineer. Bitsum LLC.

edkiefer

Quote from: Jeremy Collake on April 15, 2015, 01:31:11 PM
I am rethinking this, after getting feedback from confused users. What I may do is, at the very least, throw up a dialog saying "We're trying to terminate this process..." , so the user knows what is going on while the graceful termination is attempted.

It's also likely I'll go ahead and add a timeout setting to the UI (already in the INI).
Yes, that might be good idea so user knows whats going on , some app close fast and clean , others need the forced timer to do it .
Bitsum QA Engineer

Jeremy Collake

Yes, with a button maybe to go ahead and force the termination.. like Windows does with stalled apps.

It'll take a bit of work, but will be a nice touch.

Kind of bad timing in the update process, but I will work it out. We have a good, stable build right now that is well translated, etc..
Software Engineer. Bitsum LLC.

edkiefer

Seems very solid on my  end .

Ed
Bitsum QA Engineer

chris635

Quote from: Jeremy Collake on April 15, 2015, 01:31:11 PM
I am rethinking this, after getting feedback from confused users. What I may do is, at the very least, throw up a dialog saying "We're trying to terminate this process..." , so the user knows what is going on while the graceful termination is attempted.

It's also likely I'll go ahead and add a timeout setting to the UI (already in the INI).

I agree with you and Ed on this.

And also the build is pretty solid right now on my end too.
Chris

Jeremy Collake

Yea, I have this all planned out and am pretty eager to implement it.... it'll toss up the wait dialog, allow terminate NOW button, etc..  Probably have it done today.
Software Engineer. Bitsum LLC.

Jeremy Collake

The new build, v8.0.3.1 beta, refines the new graceful-first process termination function. It's still a bit rough around the edges (e.g. ugly dialog and need to reduce cases of 'flicker' when instantaneous termination occurs), but I'm cleaning that up. BUT, it should work much better.

Now released.
Software Engineer. Bitsum LLC.

edkiefer

Quote from: Jeremy Collake on April 17, 2015, 04:52:59 AM
The new build, v8.0.3.1 beta, refines the new graceful-first process termination function. It's still a bit rough around the edges (e.g. ugly dialog and need to reduce cases of 'flicker' when instantaneous termination occurs), but I'm cleaning that up. BUT, it should work much better.

Now released.
Yes , Much improvement from last build , cleaner termination on my end .
Bitsum QA Engineer

BenYeeHua

Yup, much better, and it failed to graceful terminate ProcessLasso.exe. ;D

Anyways, before this beta build came out, I tried once, and found that Process Lasso freeze for waiting the process to terminated, until I killed that process manually by using Windows Task Manager.
So far I can't reproduce it anymore, and I guess there is no ways to workaround this issues? :)

Jeremy Collake

Yes, no more freezing when terminating. I moved the process termination to another thread so it never holds up the UI.
Software Engineer. Bitsum LLC.

BenYeeHua