Klasy i wątki ODBC

Począwszy od MFC 4.2, istnieje wielowątkowości obsługę klas MFC ODBC.Należy jednak zauważyć, że MFC nie zapewnia obsługę wielowątkowości dla klas obiektów DAO.

Obsługę wielowątkowości klas ODBC ma pewne ograniczenia.Ponieważ klasy te wrap interfejsu API ODBC, są one ograniczone do wielowątkowego składniki, na które są zbudowane.Na przykład wiele sterowników ODBC nie są wątków; Dlatego klas MFC ODBC nie są wątków korzystania z jednego z tych sterowników.Należy sprawdzić, czy określony sterownik jest wątków.

Podczas tworzenia aplikacji wielowątkowych, należy bardzo ostrożnie, przy użyciu wielu wątków do manipulowania tym samym obiekcie.Na przykład, przy zastosowaniu tej samej CRecordset obiektu w dwóch wątków, które mogą być przyczyną problemów podczas pobierania danych; operacji pobierania w jeden wątek może zastąpić dane pobrane w innym wątku.Bardziej wspólne korzystanie z klas MFC ODBC w oddzielnych wątkach jest udostępnienie otwarty CDatabase obiekt w wątki, aby użyć tego samego połączenia ODBC z oddzielnym CRecordset obiektu w każdym wątku.Należy zauważyć, że nie należy przekazać nieotwarte CDatabase sprzeciw w stosunku do CRecordset obiektu w innym wątku.

[!UWAGA]

Jeśli wiele wątków manipulować tego samego obiektu, należy wdrożyć mechanizmy synchronizacji właściwe, takie jak sekcji krytycznych.Należy pamiętać, że niektóre operacje, takie jak Otwórz, nie są chronione.Należy się upewnić, że operacje te nie zostanie wywołany, równocześnie z oddzielnych wątków.

Aby uzyskać więcej informacji na temat tworzenia aplikacji wielowątkowych, zobacz Wielowątkowości tematy.

Zobacz też

Koncepcje

Open Database Connectivity (ODBC)

Programowanie dostępu do danych