public static int IfInterrupted <T1, T2, T3>(Func <T1, T2, T3, int> operation, T1 arg1, T2 arg2, T3 arg3) { int rc; do { rc = operation(arg1, arg2, arg3); }while (rc == -1 && LibZmq.zmq_errno() == ErrorCode.EINTR); return(rc); }
private static int RetryIfInterrupted(Func <int> func) { int rc; do { rc = func(); }while (rc == -1 && LibZmq.zmq_errno() == ErrorCode.EINTR); return(rc); }
public static int GetErrorCode() { return(LibZmq.zmq_errno()); }