Input.GetJoystickNamesはGC allocする

Unity
public class JoystickNames : MonoBehaviour
{
    // Update is called once per frame
    void Update()
    {
        string[] controllerNames = UnityEngine.Input.GetJoystickNames();

    }
}

直感でやばそうな関数臭がしますね。コントローラーの接続判定をするにしても10秒に一度とかにするべきですね。毎フレームは無しです。