Notitie
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen u aan te melden of de directory te wijzigen.
Voor toegang tot deze pagina is autorisatie vereist. U kunt proberen de mappen te wijzigen.
Over het algemeen is synchronisatie niet vereist wanneer u een appartement met één thread (STA) hebt, omdat het appartement de synchronisatie voor u biedt. Synchronisatie wordt belangrijk wanneer u een multithreaded appartement (MTA) en een vrij threaded object hebt. In het verleden moesten vrije threaded objecten vergrendeling afhandelen. U kunt het gebruik van vergrendeling elimineren door het synchronisatiekenmerk voor een onderdeel in te stellen.
Synchronisatie heeft de volgende eigenschappen:
- Hiermee kan één beller het onderdeel tegelijk invoeren.
- Hiermee voorkomt u de stroom tussen processen of computers.
- Stromen van het ene onderdeel naar het andere binnen het proces.
- Staat reentrancy toe van dezelfde beller.
In tegenstelling tot appartementen omvatten activiteiten contexten van meerdere processen en hosts. Synchronisatie bepaalt welke activiteit een object bevat. Objecten kunnen zich in een van de volgende activiteiten bevinden:
- Activiteit van maker
- Nieuwe activiteit
- Geen activiteit
COM+ zorgt voor gelijktijdigheid door een reeks vergrendelingen voor elke activiteit. Als een beller probeert een com+ gesynchroniseerd onderdeel in te voeren dat al door een andere beller wordt gebruikt, wordt de oproep geblokkeerd totdat de vergrendeling wordt vrijgegeven. Dit blokkeringsgedrag heeft geen time-out en kan niet geconfigureerd worden om te verlopen. Is de vergrendeling niet in gebruik, dan wordt deze verkregen en wordt de aanroep verwerkt. Nadat het proces is voltooid, wordt de vergrendeling vrijgegeven voor de volgende beller. Om deadlock te voorkomen, beheert COM+ de toegang tot alle objecten in verschillende activiteiten door een geneste reeks aanroepen die door het hele netwerk heen zijn gekoppeld.
COM+ biedt de volgende synchronisatie-instellingen:
- Uitgeschakeld
- Niet ondersteund
- Ondersteund
- Vereist
- Vereist iets nieuws
Notitie
Sommige synchronisatie-instellingen werken in combinatie met andere COM+-onderdeelinstellingen. Bijvoorbeeld, synchronisatie is vereist als de COM+ Just-In-Time (JIT) activeringsservice is ingeschakeld. JIT is vereist als u transacties inschakelt; Daarom vereist COM+ transactieverwerking ook synchronisatie. Klassen met de instelling JIT=True moeten dus ook de instelling Synchronisatie=Vereist of Synchronisatie=VerkrijgtNieuw hebben.
Zie Het synchronisatiekenmerk instellenvoor instructies over het instellen van synchronisatieopties met het beheerprogramma Component Services.
Zie Automatiseren van COM+-beheervoor meer informatie over het gebruik van de COM+-administratiebibliotheek om synchronisatieopties in te stellen.
Verwante onderwerpen