コード例 #1
0
 private void RestoreState()
 {
     CrestronLogger.DebugLevel = savedDebugLevel;
     CrestronLogger.LogOnlyCurrentDebugLevel = savedLogOnlyThisLevel;
     CrestronLogger.Mode = savedLoggerMode;
     CMonitor.Exit(lockObject);
 }
コード例 #2
0
 public void Exit()
 {
     try {
         CMonitor.Exit(mutex);
     }
     catch { }
 }
コード例 #3
0
ファイル: KnxTunnel.cs プロジェクト: sgjl1992cz/Crestron-KNX
        internal byte IncrementSequenceNumber()
        {
            byte bret;

            CMonitor.Enter(_txsequenceNumberLock);
            bret = _txsequenceNumber++;
            CMonitor.Exit(_txsequenceNumberLock);
            return(bret);
        }
コード例 #4
0
ファイル: KnxTunnel.cs プロジェクト: sgjl1992cz/Crestron-KNX
        private SocketErrorCodes SendDatagram(byte[] data, int len)
        {
            if (client == null)
            {
                return(SocketErrorCodes.SOCKET_NOT_CONNECTED);
            }

            CMonitor.Enter(_sendDatagramLock);
            SocketErrorCodes sret = client.SendData(data, len, remoteEndpoint);

            CMonitor.Exit(_sendDatagramLock);
            if (sret != SocketErrorCodes.SOCKET_OK)
            {
                ErrorLog.Error("SendDatagram: {0}", sret.ToString());
            }
            return(sret);
        }
コード例 #5
0
ファイル: KnxTunnel.cs プロジェクト: sgjl1992cz/Crestron-KNX
 internal void ResetSequenceNumber()
 {
     CMonitor.Enter(_txsequenceNumberLock);
     _txsequenceNumber = 0x00;
     CMonitor.Exit(_txsequenceNumberLock);
 }
コード例 #6
0
ファイル: KnxTunnel.cs プロジェクト: sgjl1992cz/Crestron-KNX
 internal void DecrementSingleSequenceNumber()
 {
     CMonitor.Enter(_txsequenceNumberLock);
     _txsequenceNumber--;
     CMonitor.Exit(_txsequenceNumberLock);
 }
コード例 #7
0
 public void Exit()
 {
     CMonitor.Exit(mutex);
 }
コード例 #8
0
 /// <summary>
 /// Manually release the lock.
 /// (Note: This is done automatically when the LockToken is disposed)
 /// </summary>
 public void ReleaseLock()
 {
     CMonitor.Exit(_monitorObject);
 }