2010-06-03 11 views
1

J'écris une bibliothèque .NET 4.0 qui devrait être efficace et simple à utiliser.Dois-je utiliser des tâches .NET 4.0 dans une bibliothèque?

La bibliothèque est utilisée en la référençant et en utilisant ses différentes classes. Dois-je utiliser des tâches .NET 4.0 pour rendre les choses plus efficaces en interne? Je crains que cela ne rende l'utilisation de la bibliothèque plus complexe et plus limitée, car les utilisateurs pourraient décider eux-mêmes quand et où utiliser les tâches et les discussions.

Si votre réponse dépend du type de bibliothèque, voici plus d'informations:

La bibliothèque est Pcap.Net, qui est un wrapper pour WinPcap et comprend un cadre d'interprétation des paquets.

Répondre

3

C'est seulement un problème quand l'utilisateur peut 'voir' le threading, c.-à-d. Vous donnez l'accès aux données qui pourraient être accédées (par vous) sur un autre sujet. Probablement pas une bonne idée. Mais lorsque le traitement parallèle reste complètement à l'intérieur de votre application, il y a très peu de chances que vos utilisateurs s'y opposent.

0

Devrait? Dunno. Que diriez-vous de donner aux gens une option en fournissant des méthodes d'extension qui utilisent des tâches contre la bibliothèque et les expulser dans une DLL séparée? Si vous voulez utiliser des tâches, référencez la bibliothèque d'extensions et devenez fou. Sinon, respectez la DLL principale.

Je crois qu'il y a beaucoup de projets qui suivent ce modèle avec Linq. Ils fournissent leur bibliothèque principale et un .Linq.DLL séparé qui a des méthodes d'extension ...