Michael,
This problem occurs because your views are executing asychronously. There are two settings that could cause this. One is if your connection is set for asnychronous execution. The other is if one or more views have FetchSize set to something other than -1 (-1 means fetch all the records at once).
If you don't need asynchronous execution, make these two changes and you can share a connection without getting those errors. If you need asynchronous execution you'll need separate connections as a single connection can only process one request at a time.
>I've had similar problems using an Oracle back-end. When I change my views to share a connection I get errors when the dataenvironment inits.