コード例 #1
0
        public static void AsyncOperation <T>(AsyncCall call, string operation, AmazonDynamoCallback <T> callback, object state)
        {
            DynamoDBAsyncState <T> result = new DynamoDBAsyncState <T>(operation, callback, state);

            ThreadPool.QueueUserWorkItem(s => Execute(call, result));
            return;
        }
コード例 #2
0
 private static void Execute <T>(AsyncCall call, DynamoDBAsyncState <T> result)
 {
     try
     {
         result.Return = call();
         AmazonMainThreadDispatcher.ExecCallback <T>(result.Callback, new AmazonDynamoResult <T>((T)result.Return, null, result.State));
         return;
     }
     catch (Exception ex)
     {
         AmazonLogging.LogException(AmazonLogging.AmazonLoggingLevel.Errors, result.Operation, ex);
         AmazonMainThreadDispatcher.ExecCallback <T>(result.Callback, new AmazonDynamoResult <T>(default(T), ex, result.State));
         return;
     }
 }