Click or drag to resize

Welcome to AsyncInit

Introduction

AsyncInit is a generic implementation of the Asynchronous Factory pattern. It supports the following platforms:

  • .NET Framework 4
  • Silverlight 4
  • Windows 8
  • Windows Phone Silverlight 7.1
  • Windows Phone 8.1
  • Xamarin.Android
  • Xamarin.iOS
  • Portable Class Libraries

This library might not be of much value on its own. Check out the Unity Container Async Extensions for more advanced usage scenarios.

Getting Started

If you haven't already, install the NuGet package. The current version is Version 1.5.0. Versions prior to Version 1.2.0 had a bug that rendered them effectively unusable on most platforms. Their NuGet Gallery dwelling serves as a perpetual monument to the author's vanity.

Next, derive from an appropriate AsyncInitBase or CancelableAsyncInitBase(recommended) generic class.

If your class cannot be derived from an AsyncInitBase or from a CancelableAsyncInitBase, implement an IAsyncInitBase and/or an ICancelableAsyncInitBase.

If you are targeting Silvelight 4 or 5, you will have to slightly adjust your implementation.

Miscellanea

You might find The NAG Constructor Pattern of use.

Aknowledegments

Stephen Cleary is the author of an excellent article that inspired this project.

Eric Woodruff is the creator of SHFB, which produces great project documentation like this one.

Notice

Copyright © Dmitry Shechtman 2014-2015

Licensed under the Apache License, Version 2.0 (the "License").

You may obtain a copy of the License at http://www.apache.org/licenses/LICENSE-2.0.

Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.

See Also