Beispiel #1
0
        /// <summary>
        /// Start one of 3 possible field-processing tasks
        /// </summary>
        private void processFieldAsync(string filePath, IProcessingSettings settings, object taskId)
        {
            AsyncOperation asynOp = AsyncOperationManager.CreateOperation(taskId);

            lock (processJobs.SyncRoot)
            {
                if (processJobs.Contains(taskId))
                {
                    throw new ArgumentException("Task ID parameter must be unique", "taskId");
                }

                processJobs[taskId] = asynOp;
            }

            processFieldWorkerEventHandler workerDelegate = new processFieldWorkerEventHandler(processFieldWorker);

            workerDelegate.BeginInvoke(
                filePath, settings,
                asynOp,
                null, null);
        }
        /// <summary>
        /// Start one of 3 possible field-processing tasks
        /// </summary>
        private void processFieldAsync(string filePath, IProcessingSettings settings, object taskId)
        {
            AsyncOperation asynOp = AsyncOperationManager.CreateOperation(taskId);
            lock (processJobs)
            {
                if (processJobs.ContainsKey(taskId))
                {
                    throw new ArgumentException("Task ID parameter must be unique", "taskId");
                }

                processJobs[taskId] = asynOp;
            }

            processFieldWorkerEventHandler workerDelegate = new processFieldWorkerEventHandler(processFieldWorker);
            workerDelegate.BeginInvoke(
                filePath, settings,
                asynOp,
                null, null);
        }