Can you tell me why this is required on Windows?
I can't see why a lost network connection is a reason to reboot the system.
Why do you think the reboot fixes any network problem?
Imho, an application should never reboot the system, except windows installers perhaps, but only after asking the user.
Regarding the memory load: Try to remove memleaks from you app,
or restart the application not the system.