NoSugarNet/NoSugarNet.ClientCore/AppNoSugarNet.cs

50 lines
1.8 KiB
C#

using NoSugarNet.ClientCore.Manager;
using NoSugarNet.ClientCore.Network;
using ServerCore.Manager;
namespace NoSugarNet.ClientCore
{
public class AppNoSugarNet
{
public static string TokenStr;
public static long RID = -1;
public static string IP;
public static int Port;
public static LogManager log;
public static NetworkHelper networkHelper;
public static AppLogin login;
public static AppChat chat;
public static AppLocalClient local;
public static UserDataManager user;
public static System.Timers.Timer _SpeedCheckTimeTimer;//速度检测计时器
public static int TimerInterval = 1000;//计时器间隔
#region
public delegate void OnUpdateStatusHandler(long resultReciveAllLenght, long resultSendAllLenght);
public static event OnUpdateStatusHandler OnUpdateStatus;
#endregion
public static void Init(string IP, int port)
{
log = new LogManager();
networkHelper = new NetworkHelper();
login = new AppLogin();
chat = new AppChat();
local = new AppLocalClient();
user = new UserDataManager();
networkHelper.Init(IP, port);
_SpeedCheckTimeTimer = new System.Timers.Timer();
_SpeedCheckTimeTimer.Interval = TimerInterval;
_SpeedCheckTimeTimer.Elapsed += Checktimer_Elapsed;
_SpeedCheckTimeTimer.AutoReset = true;
_SpeedCheckTimeTimer.Enabled = true;
}
static void Checktimer_Elapsed(object sender, System.Timers.ElapsedEventArgs e)
{
local.GetCurrLenght(out long resultReciveAllLenght, out long resultSendAllLenght);
OnUpdateStatus?.Invoke(resultReciveAllLenght, resultSendAllLenght);
}
}
}