using System.Collections;
using System.Collections.Generic;
using UnityEngine;
using System;
using System.Collections.Concurrent;
using System.Linq;
using System.Diagnostics;
using UnityEngine.Networking;
using System.Net;
using System.Net.Sockets;
using System.Text;
using System.Threading;
public class MyNetMQClient : MonoBehaviour
{
public static MyNetMQClient instance;
[DisplayOnly]
public string PubIP= "127.0.0.1:8082";
[DisplayOnly]
public string SubIP = "127.0.0.1:8081";
///
/// 接口IP (配置文件)
///
public static string CallIP = "192.168.1.161:8080";
public static string SyncServerIP = "192.168.1.161:8888";
public static string remoteServerIP = "192.168.1.161:8890";
[HideInInspector]
public NetMqListener _netMqListener;
[HideInInspector]
public NetMqPublisher _netMqPublisher;
private void Awake()
{
instance = this;
}
///
/// 初始化Netmq
///
/// 接收函数
public void Init(string ServerSubIP,string ServerPubIP, NetMqListener.ReciveMessageInThread reciveInthread, NetMqListener.ReceiceMessageInMono reciveInMono,string typename)
{
SubIP = ServerSubIP;
PubIP = ServerPubIP;
//开启接收模块
_netMqListener = new NetMqListener(ServerSubIP, reciveInthread, reciveInMono);
_netMqListener.typeName = typename;
//开启发送模块
_netMqPublisher = new NetMqPublisher(ServerPubIP);
_netMqPublisher.typeName = typename;
}
///
/// 发送消息
///
///
public void Send(string msg)
{
_netMqPublisher.AddMessageToSendQue(GlobalFlag.roomID, 0, Encoding.UTF8.GetBytes(msg));
}
private void Update()
{
if (_netMqListener != null)
{
_netMqListener.UpdateByte();
}
}
public void Destroy()
{
_netMqListener._listenerCancelled = true;
_netMqPublisher._listenerCancelled = true;
UnityEngine.Debug.Log("销毁xxxxx");
Destroy(this);
}
}
///
/// 消息体
///
[Serializable]
public class st_Motions
{
///
/// 域
///
public string area;
///
/// 消息标识
///
public int m_iOperaType;
///
/// 消息内容(byte[256])
///
public byte[] m_sOperaData;
}
///
/// 演习状态
///
public enum ProgramState
{
结束,
进行中
}
public class DisplayOnly : PropertyAttribute
{
}