/// <summary> /// 등록된 이벤트 특정 콜백 삭제 /// </summary> /// <param name="inKey"></param> /// <param name="inEvent"></param> public void RemoveEventCallback(string inKey, SocketCallback inEvent) { if (_eventCallbackDic.ContainsKey(inKey)) { _eventCallbackDic[inKey] = (_eventCallbackDic[inKey] as SocketCallback) - inEvent; } }
public SocketThread(string ipAddress, int port, string remoteAddress, int remotePort, SocketCallback callback = null) { m_socket = new Socket(AddressFamily.InterNetwork, SocketType.Dgram, ProtocolType.Udp); m_ipAddress = ipAddress; m_port = port; m_remoteAddress = remoteAddress; m_remotePort = remotePort; m_socketCallback = callback; }
private void OnRequest(SocketIOEvent inData) { string callFunc = inData.name; if (_eventCallbackDic.ContainsKey(callFunc)) { SocketCallback callback = (_eventCallbackDic[callFunc] as SocketCallback); callback(inData.data == null ? string.Empty : inData.data.ToString()); } }
/// <summary> /// 소켓 이벤트 콜백 등록 /// </summary> /// <param name="inKey"></param> /// <param name="inEvent"></param> public void AddEventCallback(string inKey, SocketCallback inEvent) { if (_eventCallbackDic.ContainsKey(inKey)) { _eventCallbackDic[inKey] = (_eventCallbackDic[inKey] as SocketCallback) + inEvent; } else { _eventCallbackDic.Add(inKey, inEvent); } }
public static extern CURLMcode SetOpt(SafeMultiHandle multiHandle, CURLMoption option, SocketCallback value);