[firebase-br] Acesso ao Firebird a partir do Oracle

Sandro Souza escovadordebits em gmail.com
Qua Set 16 12:05:47 -03 2009


Bom dia/tarde Carlos.

Grande Carlos, esqueci de citar um caso que ainda não foi resolvido no Free
Pascal.

Sei que é bem offtopic, mas já que estamos falando um pouco do FPC,
aproveito para citar que ainda não conseguimos criar uma thread a partir de
uma DLL/SO sem "quebrar a aplicação na emenda".

Infelizmente, só conseguimos criar novas threads a partir da aplicação
principal, se criarmos uma thread de dentro de uma DLL/SO, a aplicação toda
se quebra.

Resolvi isso criando funções dentro da aplicação principal, para criar e
gerenciar threads, e informo o endereço dessas funções para as DLLs/SOs que
também criei, dessa forma, quando preciso criar uma nova thread de dentro de
uma das minhas DLLs/SOs (caso raro), utilizo essas funções, que na verdade
estão dentro da aplicação principal, e dessa forma, consigo criar minhas
threads sem quebrar o sistema todo.

Com relação ao uso de UDFs em FPC com o Firebird, muito provavelmente
consigamos resolver essas broncas utilizando semáforos, como já utilizo
(tanto em Delphi quanto em FPC) e que tem resolvido meus problemas de
multithread.

Agradeço a oportunidade de citar essas situações, e apesar de ser offtopic,
espero que outros desenvolvedores que utilizam o FPC também sejam
beneficiados. :D

2009/9/16 Sandro Souza <escovadordebits em gmail.com>

> Bom dia/tarde Carlos.
>
> Grande Carlos, realmente a questão de threadsafe sempre foi o calcanhar de
> Aquiles do Free Pascal.
>
> Eu sempre procuro usar semáforos nessas situações, pois dessa forma, eu
> mesmo faço a minha proteção com relação a multithreads.
>
> 2009/9/16 Carlos H. Cantu <listas em warmboot.com.br>
>
>> Nos meus testes, só dava problema quando se fazia varias conexões com
>>
>> o banco de dados, e chamava a UDF diversas vezes simultaneamente em
>> todas as conexões. O Firebird que usei no teste foi o SuperServer.
>>
>> Aparentemente o FreePascal não gerava (ou gera) código threadsafe para
>> shared objects.
>>
>> []s
>> Carlos H. Cantu
>> www.FireBase.com.br - www.firebirdnews.org
>> www.warmboot.com.br - blog.firebase.com.br
>>
>> SS> Bom dia/tarde Carlos.
>>
>> SS> Grande Carlos, realmente o Free Pascal apresentava vários
>> SS> problemas nas versões anteriores, e mesmo a cada versão nova,
>> SS> tenho que fazer uma bateria de testes nos meus projetos para ver
>> SS> se alguma "novidade" acabou gerando problemas.
>>
>> SS> Acabei de fazer um teste simples de UDF criada pelo Free Pascal
>> SS> 2.2.4, no Linux Ubuntu 9.04, com o Firebird 2.1.2, e funcionou
>> SS> perfeitamente, mas realmente possam ainda existir casos em que
>> SS> haja algum problema, e sempre procuro fazer uma bateria de testes
>> SS> para ter certeza que não vou "formatar o HD" por engano.
>>
>> SS> Conto com a ajuda de todos vocês para testarem a UDF que devo liberar
>> em breve.
>>
>>
>> ______________________________________________
>> FireBase-BR (www.firebase.com.br) - Hospedado em www.locador.com.br
>> Para saber como gerenciar/excluir seu cadastro na lista, use:
>> http://www.firebase.com.br/fb/artigo.php?id=1107
>> Para consultar mensagens antigas: http://firebase.com.br/pesquisa
>>
>
>



Mais detalhes sobre a lista de discussão lista