In the method Controller.SendData you create UnityWebRequest without any timeout, this affects applications that are designed to work both with the internet and without. No timeout is applied when timeout is set to 0 and this property defaults to 0.
https://docs.unity3d.com/ScriptReference/Networking.UnityWebRequest-timeout.html
