示例#1
0
        /// <summary>
        /// If you need ping information straight away, wait on this. It will return
        /// immediately if you already have up to date ping data
        /// </summary>
        public static async Task WaitForPingDataAsync(float maxAgeInSeconds = 60 * 5)
        {
            if (Internal.CheckPingDataUpToDate(maxAgeInSeconds))
            {
                return;
            }

            SteamRelayNetworkStatus_t status = default;

            while (Internal.GetRelayNetworkStatus(ref status) != SteamNetworkingAvailability.Current)
            {
                await Task.Delay(10);
            }
        }
        internal SteamNetworkingAvailability GetRelayNetworkStatus(ref SteamRelayNetworkStatus_t pDetails)
        {
            var returnValue = _GetRelayNetworkStatus(Self, ref pDetails);

            return(returnValue);
        }
 private static extern SteamNetworkingAvailability _GetRelayNetworkStatus(IntPtr self, ref SteamRelayNetworkStatus_t pDetails);