watts@humbug.antnet.com writes:
> I suggest the application already has fork or fork/exec to
> implement an asynchronous design.
True, if you don't mind assuming you have threads then you could
dedicate one thread to blocking in libpq while your other threads manage
your user interface and so forth. But most of these revisions would
still be useful in that situation. The current libpq does not cope well
with query strings containing multiple commands; it doesn't cope at all
with queries that return more than one type of tuple; it requires dummy
queries (wasting both processing time and network bandwidth) to check
for NOTIFY messages; and so forth. None of those problems can be solved
just by moving calls to libpq into a separate thread.
regards, tom lane