private static void SendInsideMessageCallback(IAsyncResult async) { SignallingNodeDeviceClass.MakeSignallingLog("PC", "INFO - Sent inside message"); //metoda wywoływana po wyjściu z metody SendInsideMessage AsyncResult ar = (AsyncResult)async; Delegate_SendInsideMessage del = (Delegate_SendInsideMessage)ar.AsyncDelegate; del.EndInvoke(async); }
public void SendSignallingMessage(SignalMessage message) { //trzeba jakoś sprawdzić, czy ma wysyłać wiadomość wewnętrzną, czy zewnętrzną bool insideMessage = CheckIfMessageIsInsideOrOutside(message); if (insideMessage) { //inicjalizacja delegata Delegate_SendInsideMessage sendMessage = new Delegate_SendInsideMessage(SendInsideMessage); sendMessage.BeginInvoke(message, new AsyncCallback(SendInsideMessageCallback), null); } else { string destinationIP = message.General_DestinationIpAddress; byte[] data = SignalMessageToByte(message); SendOutsidePacket(data, destinationIP); } }