TrabalhosGratuitos.com - Trabalhos, Monografias, Artigos, Exames, Resumos de livros, Dissertações
Pesquisar

ATPS - Sistema distribuido - Sistema ipc

Por:   •  9/4/2015  •  Trabalho acadêmico  •  300 Palavras (2 Páginas)  •  495 Visualizações

Página 1 de 2

Alguém me perguntou sobre um aplicativo de amostra de IPC ou Interprocess Communications usando arquivos de memória mapeada

O que é o IPC ou Interprocess Communications você pedir.

A maneira mais fácil de explicar é por dizer que permite que duas aplicações de falar um com o outro.

 
Os seguintes mecanismos IPC são suportados pelo Windows:


Prancheta, COM, copiar dados, DDE, mapeamento de arquivo, processadores de mensagens, tubulações, RPC, Windows Sockets

Clique no link abaixo para muito mais details. http://msdn.microsoft.com/en-us/library/windows/desktop/aa365574%28v=vs.85%29.aspx#base.using_dde_for_ipc

Neste post eu vou estar explorando arquivos de memória mapeada usando o .NET C # para permitir que vários aplicativos para falar uns com os outros e passar informações.

 

No distante passado eu só tenho usado DDE para permitir que aplicativos de falar diretamente com o outro, e isso foi muito interessante para mim.

Neste exemplo eu vou estar usando arquivos de memória mapeada. Arquivos mapeados são bastante fáceis de implementar em .Net

Arquivos de memória mapeada são implementados usando o System.IO.MemoryMappedFiles Namespace

No exemplo abaixo, eu tenho dois métodos muito simples, CreateOrOpenMappedFile e ReadMemoryMappedFille

Observe abaixo que brevemente usar Mutex (de system.threading.Mutex) para capturar e segurar a linha que estamos usando para comunicações para o nosso arquivo de memória mapeada, em seguida, liberá-lo, garantindo que nós somos o único que pode alterá-lo nessa tempo.

Mais sobre Mutex aqui http://msdn.microsoft.com/en-us/library/system.threading.mutex%28v=vs.110%29.aspx

Eu criei um aplicativo e fez uma cópia chamando o APP1.EXE aplicações e app2.exe. Com base em uma opção de linha de comando que eu definir um para ser o remetente e um como receptor (na verdade, ambos atuam como emissor e receptor. Eu só precisava de uma maneira de especificar diferentes mensagens com base em como o aplicativo foi iniciado).

Ao usar arquivos de memória mapeada aplicações múltiplas podem ter acesso ao mesmo espaço de memória para compartilhar mensagens e dados, que normalmente não teriam acesso. Veja a imagem abaixo

[pic 1]

...

Baixar como (para membros premium)  txt (2.2 Kb)   pdf (68.6 Kb)   docx (303 Kb)  
Continuar por mais 1 página »
Disponível apenas no TrabalhosGratuitos.com