Programació Asíncrona Event-based vs IAsyncResult Pattern

La programació asíncrona és cada vegada més i més necessària ja que cada vegada més fem aplicacions orientades a web. Les aplicacions d’aquest tipus com son ASP.NET o Silverlght o Wpf Browser han d’utilitzar crides asíncrones per comunicar-se amb el servidor. Per fer-ho el més comú és utilitzar Web Services o WCF. Aquests ja porten els seus mètodes asincrons que ens faciliten molt la feina.

Precisament quan treballem amb asincronismes és quan veiem que amb .Net tenim dos models o dos patrons d’implementació: Un basat en events i l’altre en delegates AsyncCallback. Cada un d’aquests patrons està ben explicat les msdn de Microsoft. Per les diferencies pots determinar quin és el millor patró que pots escollir però i si no et determina res? quin patró hauríem d’utilitzar?

El basat en events necessita molt més codi per implementar vers el de crides IAsyncResult. A més el rendiment he notat que és superior en el de IAsyncResult.

Per tant, posats a escollir un patró jo prefereixo el de IAsyncResult que és més fàcil i ràpid però tenint molt present les recomenacions que ens fa Microsoft.

Anuncis

Deixa un comentari

Fill in your details below or click an icon to log in:

WordPress.com Logo

Esteu comentant fent servir el compte WordPress.com. Log Out / Canvia )

Twitter picture

Esteu comentant fent servir el compte Twitter. Log Out / Canvia )

Facebook photo

Esteu comentant fent servir el compte Facebook. Log Out / Canvia )

Google+ photo

Esteu comentant fent servir el compte Google+. Log Out / Canvia )

S'està connectant a %s