DoWork ケースが非常に具体的な場合は、そのまま特殊化された非同期関数になります。汎用にするには、DoWork ケースを何らかの方法でカスタマイズできるようにします。
非同期 GDK 関数と同じパターンで、XAsyncBegin とそのプロバイダー コールバックを再利用可能なメソッドにラップし、DoWork ケースを汎用的に保ちます。
DoWork ケースが非常に具体的な場合は、そのまま特殊化された非同期関数になります。汎用にするには、DoWork ケースを何らかの方法でカスタマイズできるようにします。