Acesso a uma variável externa(Multiprocessamento).

Delphi

13/11/2003

Estou tentando desenvolver um sistema que utiliza uma [b:4162c6a189]Array [/b:4162c6a189]de [color=red:4162c6a189][u:4162c6a189]N [/u:4162c6a189][/color:4162c6a189]elementos[color=blue:4162c6a189](Lista Circular Duplamente Encadeada)[/color:4162c6a189]. Na qual existem 3 programas que:

o 1º adiciona elementos nesta lista.
o 2º retira elementos desta lista
e o 3º re-organiza a lista.

Pergunta: Alguém sabe como posso fazer isso, usando apenas uma única variável (este [b:4162c6a189]Array[/b:4162c6a189], que é comum aos três programas acima).


Obs. aceito sugestões....


Otto

Otto

Curtidas 0

Respostas

Beppe

Beppe

13/11/2003

Processos diferentes tem espaço de endereços diferentes, então não adiante chamar New ou GetMem ou um construtor, porque os dados não serão compartilhados.

Para contornar o problema utilize file mappings(CreateFileMapping e OpenFileMapping). Um processo cria, os outros abrem o mapping, com um nome especifico. Quando precisar adicionar um registro aloque(pegue e avance um ponteiro) [i:e2df497679]x[/i:e2df497679] bytes deste file e linque no último registro. Como um file mapping tem tamanho fixo, pense em usar vetores, ao invés de linked lists, já que será mais econômico.

Ataliba


GOSTEI 0
Flaviodfp

Flaviodfp

13/11/2003

Valeu Ataliba.

Ats,

Otto.


GOSTEI 0
Otto

Otto

13/11/2003

So pra deixa claro, esse flaviofdp, aff, flavio dfp, trabalha comigo, e ele tb ta nesse projeto junto comigo... 8)


GOSTEI 0
Beppe

Beppe

13/11/2003

Ah!


GOSTEI 0
POSTAR