private void Awake() { instance = this; infoText = transform.Find("Text").GetComponent <Text>(); rotateTrsm = transform.Find("Image"); group = GetComponent <CanvasGroup>(); }
/// <summary> /// 释放资源 /// </summary> public override void Dispose() { if (IsDisposed == 0) { base.Dispose(); DisposeSocket(); SocketWait.Set(); } }
/// <summary> /// 等待套接字 /// </summary> /// <returns></returns> private TcpServer.ClientSocketBase waitSocket() { if (Attribute.TcpRegisterName == null) { TryCreateSocket(); } SocketWait.Wait(); return(Socket); }
private void createSocket(IPAddress ipAddress, int port, int createVersion) { if (check(ipAddress, port)) { CreateSocket = new ClientSocket(this, ipAddress, port, createVersion); } else { SocketWait.Set(); } }
/// <summary> /// 释放资源 /// </summary> public override void Dispose() { if (IsDisposed == 0) { base.Dispose(); if (CreateSocket != null) { (CreateSocket as ClientSocket <attributeType>).DisposeSocket(); } SocketWait.Set(); } }
/// <summary> /// 尝试创建第一个套接字 /// </summary> public void TryCreateSocket() { if (Interlocked.CompareExchange(ref CreateVersion, 1, 0) == 0) { IPAddress ipAddress = IpAddress; int port = Port; if (check(ipAddress, port)) { CreateSocket = new ClientSocket(this, ipAddress, port, 1); } else { SocketWait.Set(); } } }
/// <summary> /// 服务更新 /// </summary> /// <param name="serverSet"></param> void TcpRegister.IClient.OnServerChange(TcpRegister.ServerSet serverSet) { if (serverSet == null || IsDisposed != 0) { SocketWait.PulseReset(); } else { if (clientRoute == null) { clientCreator.OnServerChange(serverSet); } else { clientRoute.OnServerChange(serverSet); } } }
/// <summary> /// 服务更新 /// </summary> /// <param name="serverSet"></param> void TcpRegister.IClient.OnServerChange(TcpRegister.ServerSet serverSet) { if (serverSet == null) { SocketWait.PulseReset(); } else { TcpRegister.ServerInfo server = serverSet.Server.Server; IPAddress ipAddress = HostPort.HostToIPAddress(server.Host, Log); if (server.Port == Port && ipAddress.Equals(IpAddress)) { if (!server.IsCheckRegister) { TryCreateSocket(); } } else { Host = server.Host; createSocket(IpAddress = ipAddress, Port = server.Port, Interlocked.Increment(ref CreateVersion)); } } }
/// <summary> /// 等待套接字 /// </summary> /// <returns></returns> private TcpServer.ClientSocketBase waitSocket() { TryCreateSocket(); SocketWait.Wait(); return(Socket); }