context_handle_serialize özniteliği

[context_handle_serialize] ACF özniteliği, uygulamanın varsayılan davranışından bağımsız olarak bağlam tanıtıcısının her zaman seri hale getirileceğini garanti eder.

typedef [context_handle_serialize [ , type-acf-attribute-list ] ] context-handle-type;

[context_handle_serialize [, function-acf-attribute-list ] ] function-name( );

function-name(
    [context_handle_serialize [ , parameter-acf-attribute-list ] ] param-name );

Parametreler

type-acf-attribute-list

Türüne uygulanan diğer tüm ACF öznitelikleri.

bağlam tutamacı türü

Bir tür tanımı bildiriminde tanımlandığı gibi bağlam tanıtıcı türünü belirten tanımlayıcı. Bu, IDL dosyasında [context_handle_serialize] özniteliğini alan türdür.

function-acf-attribute-list

İşleve uygulanan ek ACF öznitelikleri.

işlev-adı

IDL dosyasında tanımlanan işlevin adı.

parameter-acf-attribute-list

parametresine uygulanan diğer tüm ACF öznitelikleri.

param-name

IDL dosyasında tanımlandığı gibi parametresinin adı.

Açıklamalar

[context_handle_serialize] özniteliği, uzak yordam çağrıları arasında sunucuda bağlam veya durum bilgilerini koruyan bir bağlama tanıtıcısı tanımlar. Özniteliği idl typedef türü özniteliği olarak, işlev dönüş türü özniteliği olarak veya parametre özniteliği olarak görünebilir.

Varsayılan olarak, bağlam tanıtıcıları üzerindeki çağrılar serileştirilir, ancak bir uygulama bu varsayılan davranışı geçersiz kılmak için RpcSsDontSerializeContext çağrısı yapabilir. Bir ACF dosyasında [context_handle_serialize] özniteliğinin kullanılması, çağıran uygulama varsayılan serileştirmeyi geçersiz kılsa bile bu belirli bağlam tanıtıcısındaki çağrıların seri hale getirileceğini garanti eder. Bağlam çalıştırma yordamı isteğe bağlıdır.

Bu öznitelik MIDL sürüm 5.0'da kullanılabilir.

Windows Server 2003 ve Windows XP veya üzeri: Tek bir arabirim hem serileştirilmiş hem de seri durumdan çıkarılmamış bağlam tanıtıcılarını barındırabilir ve arabirimde tek bir yöntemin özel olarak (serileştirilmiş) bir bağlam tanıtıcısına erişmesini sağlarken, diğer yöntemler bu bağlam tutamacını paylaşılan modda (seri durumdan çıkarılmamış) eriştirebilir. Bu erişim özellikleri okuma/yazma kilitleme mekanizmalarıyla karşılaştırılabilir; serileştirilmiş bağlam tutamacını kullanan yöntemler özel kullanıcılardır (yazıcılar), seri durumdan çıkarılmamış bağlam tutamacını kullanan yöntemler paylaşılan kullanıcılardır (okuyucular). Bağlam tanıtıcısının durumunu yok eden veya değiştiren yöntemler seri hale getirilmelidir. Bağlam tutamacının durumunu değiştirmeyen yöntemler( örneğin, bir bağlam tutamacından okuyan yöntemler) seri durumdan çıkarılamaz. Oluşturma yöntemlerinin örtük olarak seri hale getirildiğini unutmayın.

Örnekler

typedef [context_handle_serialize] PCONTEXT_HANDLE_TYPE; 
HRESULT RemoteFunc([context_handle_serialize] pCxHandle);

Ayrıca bakınız

Uygulama Yapılandırma Dosyası (ACF)

ACF Öznitelikleri

context_handle_noserialize

context_handle

Bağlam Tanıtıcıları

RpcSsDontSerializeContext

Sunucu Bağlamı Çalıştırma Yordamı

Çok İş Parçacıklı İstemciler ve Bağlam Tanıtıcıları

Typedef