Esempio n. 1
0
 /// <summary>
 /// 获取数据
 /// </summary>
 /// <param name="connection"></param>
 internal override void RunLinkQueueTask(ref DbConnection connection)
 {
     try
     {
         value = queue.get(node, key);
     }
     finally
     {
         wait.Set();
     }
 }
Esempio n. 2
0
 /// <summary>
 /// 获取数据
 /// </summary>
 /// <param name="connection"></param>
 internal override Threading.LinkQueueTaskNode RunLinkQueueTask(ref DbConnection connection)
 {
     try
     {
         value = queue.get(node, key);
     }
     finally
     {
         wait.Set();
     }
     return(LinkNext);
 }
Esempio n. 3
0
 /// <summary>
 /// 获取缓存数据
 /// </summary>
 /// <param name="connection"></param>
 internal override void RunLinkQueueTask(ref DbConnection connection)
 {
     try
     {
         Value = queue.get(node, key);
     }
     finally
     {
         if (System.Threading.Interlocked.CompareExchange(ref continuation, Pub.EmptyAction, null) != null)
         {
             new Task(continuation).Start();
         }
     }
 }
Esempio n. 4
0
 /// <summary>
 /// 获取缓存数据
 /// </summary>
 /// <param name="connection"></param>
 internal override void RunLinkQueueTask(ref DbConnection connection)
 {
     try
     {
         Value       = queue.get(node, key);
         IsCompleted = true;
     }
     finally
     {
         if (continuation != null || System.Threading.Interlocked.CompareExchange(ref continuation, Common.EmptyAction, null) != null)
         {
             continuation();
         }
     }
 }