Fórum Thread e Consultas #43388

24/03/2004

0

Oi, gente.

Estou montando um sistema que tem a necessidade de efetuar varias consultas e alterações paralelas (ao mesmo tempo) a algumas tabelas.
Gostaria de saber se é possivel, através de threads ou de outro modo, de se executar esta consultas e alterações.

Algumas destas consultas podem ocorrer simultaneamente e um programa instalado no servidor deve gerenciar todas elas.
As vezes podem ocorrer até 100 consultas simultaneas.

Se alguém puder me ajudar.

Obrigada.


Mari

Mari

Responder

Posts

24/03/2004

Afarias

Vc pode usar Threads sem problemas desde q cada Thread thenha sua própria conexão (IBDatabase se for IBX)


T+


Responder

Gostei + 0

24/03/2004

Mari

Oi, afarias.

Obrigada pela dica.

Gostaria de saber como evitar deadlock se duas consultas estiverem alterando o mesmo registro.

Obrigada.


Responder

Gostei + 0

24/03/2004

Afarias

se as alterações forem ´rápidas´ (transações curtas) basta vc configurar as transações para WAIT -- e ai, uma transação espera a outra terminar para seguir.


T+


Responder

Gostei + 0

25/03/2004

Mari

Se as consultas demorarem 1 segundo, num total de 100 consultas, o último usuário terá de esperar mais de 1 minuto e meio para ter a resposta.

Esqueci de dizer, estou usando o DBExpress.

Obrigada.


Responder

Gostei + 0

25/03/2004

Afarias

|Se as consultas demorarem 1 segundo,

Consultas não bloqueiam registros (bom, só se for no FB 1.5 com bloqueio pessimista explícito)


|num total de 100 consultas, o último usuário terá de esperar mais de 1
|minuto e meio para ter a resposta.

Apenas se o commit (liberando o bloqueio) somente ocorrer após as 100 consultas... (isso é claro pode ser evitado)

Além do mais, 1:30min. é muito mas tb é pouco, depende do processo q se está trabalhando.

No mais, se vc não quizer esperar, pode deixar as transações em NO WAIT e então tratar a exceção gerada pedindo pro usuário tentar novamente a operação em outro momento.


T+


Responder

Gostei + 0

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar