Partilhar via


Suportando tarefas de sincronização simultâneas

O Sync Framework permite que os usuários criem provedores que podem dar suporte a tarefas de sincronização simultâneas. Porém, ele não dá suporte a sincronização paralela usando o mesmo objeto de sessão. Para desenvolver um provedor habilitado por sincronização simultâneo, use estas diretrizes:

  • O provedor deve fornecer proteções para bloquear e desbloquear o conhecimento durante chamadas.

  • O conhecimento deve ser clonado para permitir que o Sync Framework combine-o de um thread diferente. Para clonar logicamente um objeto de conhecimento, siga estas etapas antes de retornar um objeto de conhecimento para o Sync Framework:

    • Crie um novo objeto de conhecimento.

    • Defina a contagem em escala local como 1.

    • Combine o conhecimento existente com esse novo objeto usando ISyncKnowledge::Union.

    • Passe o conhecimento clonado para o Sync Framework.

Dica

Para aplicativos multithread, o Sync Framework requer que provedores sejam compatíveis com o apartamento no qual o objeto ISyncSession está sendo executado. Essa restrição também se aplica a todos os objetos passados para o Sync Framework, como versões, conhecimento etc.

Consulte também

Conceitos

Implementando um provedor personalizado padrão