e79aa3c0ed
Former-commit-id: a2155e9bd80020e49e72e86c44da02a8ac0e57a4
41 lines
1.3 KiB
C#
41 lines
1.3 KiB
C#
//------------------------------------------------------------------------------
|
|
// <copyright file="EventHandlerTaskAsyncHelper.cs" company="Microsoft">
|
|
// Copyright (c) Microsoft Corporation. All rights reserved.
|
|
// </copyright>
|
|
//------------------------------------------------------------------------------
|
|
|
|
/*
|
|
* Assists in converting an EventHandler written using the Task Asynchronous Pattern to a Begin/End method pair.
|
|
*
|
|
* Copyright (c) 2010 Microsoft Corporation
|
|
*/
|
|
|
|
namespace System.Web {
|
|
using System;
|
|
using System.Threading;
|
|
using System.Threading.Tasks;
|
|
|
|
public sealed class EventHandlerTaskAsyncHelper {
|
|
|
|
public EventHandlerTaskAsyncHelper(TaskEventHandler handler) {
|
|
if (handler == null) {
|
|
throw new ArgumentNullException("handler");
|
|
}
|
|
|
|
BeginEventHandler = (sender, e, cb, extraData) => TaskAsyncHelper.BeginTask(() => handler(sender, e), cb, extraData);
|
|
EndEventHandler = TaskAsyncHelper.EndTask;
|
|
}
|
|
|
|
public BeginEventHandler BeginEventHandler {
|
|
get;
|
|
private set;
|
|
}
|
|
|
|
public EndEventHandler EndEventHandler {
|
|
get;
|
|
private set;
|
|
}
|
|
|
|
}
|
|
}
|