Subject | Is the fb client library re-entrant? Even when sharing a connection? |
---|---|
Author | Bud Millwood |
Post date | 2008-04-25T11:33:14Z |
We've got an OO layer that wraps Firebird access, and up until now we've had
multiple threads sharing a single connection (with a lock).
We're now removing this lock and allowing some threads to create their own new
connection, but others to pool on a single connection.
The questions are:
1. For separate threads that have their own connection handles, is the
firebird client library re-entrant? Can two threads in this case both enter
the client library, and furthermore, can they both execute transactions
simultaneously? (for both Classic and Superserver, although I understand
Classic will perform better)
2. For those threads that pool a single connection handle, but use different
transaction handles, is the library re-entrant in this case, too?
- Bud
Bud Millwood
Weird Solutions, Inc.
http://www.weird-solutions.com
tel: +46 8 758 3700
fax: +46 8 758 3687
multiple threads sharing a single connection (with a lock).
We're now removing this lock and allowing some threads to create their own new
connection, but others to pool on a single connection.
The questions are:
1. For separate threads that have their own connection handles, is the
firebird client library re-entrant? Can two threads in this case both enter
the client library, and furthermore, can they both execute transactions
simultaneously? (for both Classic and Superserver, although I understand
Classic will perform better)
2. For those threads that pool a single connection handle, but use different
transaction handles, is the library re-entrant in this case, too?
- Bud
Bud Millwood
Weird Solutions, Inc.
http://www.weird-solutions.com
tel: +46 8 758 3700
fax: +46 8 758 3687