public void Stop() { NativeIPCServerImpl.StopLoop(serverThread); NativeIPCServerImpl.Release(serverHandle); serverHandle = IntPtr.Zero; }
public void Start() { serverHandle = NativeIPCServerImpl.CreateIPCServer("org.cloudveil.filterserviceprovider", onIncomingMessage, onClientConnected, onClientDisconnected); if (serverHandle == IntPtr.Zero) { throw new Exception("Failed to initialize global IPC Server"); } serverThread = NativeIPCServerImpl.StartLoop(serverHandle); }
public void PushMessage(BaseMessage msg) { IFormatter formatter = new BinaryFormatter(); using (MemoryStream stream = new MemoryStream()) { formatter.Serialize(stream, msg); byte[] arr = stream.ToArray(); NativeIPCServerImpl.SendToAll(serverHandle, arr, arr.Length); } }