Alessandro Del Sole's Blog

{ A programming space about Microsoft® .NET® }
posts - 1908, comments - 2047, trackbacks - 352

My Links

News

Your host

This is me! Questo spazio è dedicato a Microsoft® .NET®, di cui sono molto appassionato :-)

Cookie e Privacy

Disabilita cookie ShinyStat

Microsoft MVP

My MVP Profile

Microsoft Certified Professional

Microsoft Specialist

Xamarin Certified Mobile Developer

Il mio libro su VB 2015!

Pre-ordina il mio libro su VB 2015 Pre-ordina il mio libro "Visual Basic 2015 Unleashed". Clicca sulla copertina per informazioni!

Il mio libro su WPF 4.5.1!

Clicca sulla copertina per informazioni! E' uscito il mio libro "Programmare con WPF 4.5.1". Clicca sulla copertina per informazioni!

These postings are provided 'AS IS' for entertainment purposes only with absolutely no warranty expressed or implied and confer no rights.
If you're not an Italian user, please visit my English blog

Le vostre visite

I'm a VB!

Guarda la mia intervista a Seattle

Follow me on Twitter!

Altri spazi

GitHub
I miei progetti open-source su GitHub

Article Categories

Archives

Post Categories

Image Galleries

Privacy Policy

Brevi cenni sul concetto di Ownership in Windows Workflow Foundation

Quando si opera con i flussi di lavoro in Windows Workflow Foundation, è necessario tenere a mente il multi-threading e il concetto di Ownership. Infatti, può capitare che più thread abbiano accesso allo stesso workflow e che, soprattutto nel caso in cui si voglia persistere lo stato di un workflow mediante l'oggetto SQLPersistenceService, un thread tenti di scaricarlo dalla memoria mentre un altro ne ha ancora accesso. Poichè l'istanza del workflow è proprietaria del servizio di persistenza, onde evitare gli ovvi problemi che possono derivare da questa condizione (ad esempio nel caso in cui il servizio venga richiamato dopo che l'istanza cui appartiene sia stata scaricata), è possibile passare al costruttore del servizio di persistenza degli argomenti che specificano il periodo di tempo per il quale il servizio stesso sia legato all'istanza del workflow (Ownership). 

Per ovviare a tale situazione, è anche possibile forzare il runtime in modo che sia ad istanza singola, utilizzando i blocchi SyncLock..End SyncLock (in Visual Basic) e lock (in Visual C#), bloccando, di fatto, il multi-threading. Questo post vuole essere un mero spunto di riflessione, mentre ulteriori e dettagliati approfondimenti possono essere reperiti nella documentazione ufficiale su questa pagina della libreria MSDN.

Alessandro

Print | posted on giovedì 16 agosto 2007 23:24 | Filed Under [ Windows Workflow Foundation ]

Powered by:
Powered By Subtext Powered By ASP.NET