No modo de várias tarefas, o PowerExchange mantém cópias de mapas de dados lidos anteriormente na memória no
nível da tarefa
. Além disso, quando você inicia um Ouvinte do PowerExchange, o PowerExchange aloca dinamicamente 4096 bytes de memória do ECSA no qual o PowerExchange mantém o nome do arquivo de mapas de dados KSDS e o carimbo de data e hora da última atualização. O PowerExchange usa essas informações para determinar se o cache de mapas de dados está obsoleto e precisa ser limpo.
Em leituras subsequentes de mapas de dados, o PowerExchange recupera mapas de dados na memória no
nível da tarefa
, o que elimina a sobrecarga dos enfileiramentos, das aberturas, dos pontos, das leituras e dos fechamentos de arquivos de mapas de dados KSDS.
Quando um mapa de dados é alterado ou excluído, o PowerExchange executa o seguinte processamento:
Na memória do ECSA, o PowerExchange altera o carimbo de data e hora da última atualização do arquivo de mapas de dados KSDS.
Quando outra tarefa tenta acessar um mapa de dados, o PowerExchange determina se o cache é obsoleto, comparando o carimbo de data e hora na memória do ECSA com o carimbo de data e hora do cache de mapas de dados. Se o cache estiver obsoleto, o PowerExchange o limpará, lerá o mapa de dados do disco e adicionará o mapa ao cache.
Para configurar o PowerExchange para executar o cache de mapas de dados no modo de várias tarefas, defina a seguinte instrução de configuração DBMOVER:
DMXCACHE_MULTIPLEJOBS=Y
Além disso, se você quiser que o PowerExchange libere a memória do ECSA depois que o Ouvinte do PowerExchange for encerrado, defina a seguinte instrução de configuração DBMOVER:
DMXCACHE_DELETEECSA=Y
No entanto, como a alocação de memória compartilhada é uma tarefa complexa e 4096 bytes de memória é uma pequena quantidade de dados, você pode aceitar o valor padrão, que é N, para reter permanentemente a memória do ECSA.
Para obter informações sobre essas instruções DBMOVER, consulte o