In scenarios where sing-box takes a long time to exit, client may not be able to start any other profile since there are resources ( like clash port, wireguard interfaces? ) which are being held by the previous sing-box instance. By killing the core instance resources are freed and the app can be used as expected. To see the difference, create a wireguard outbound and chain it to itself. once the stop button is pressed, client cannot connect to any other profile for some time. with the changes made in this PR client can function normally once the StopTimeout has finished. This solves
In scenarios where sing-box takes a long time to exit, client may not be able to start any other profile since there are resources ( like clash port, wireguard interfaces? ) which are being held by the previous sing-box instance. By killing the core instance resources are freed and the app can be used as expected. To see the difference, create a wireguard outbound and chain it to itself. once the stop button is pressed, client cannot connect to any other profile for some time. with the changes made in this PR client can function normally once the StopTimeout has finished. This solves
Here's source codes and solutions: https://github.com/xchacha20-poly1305/husi/pull/127