Moderator: Moderatoren

IF genealog->(RLock()) == .F.
genealog->(DbUnlock())
dummy := genealog->(DbRLockList()) // Rückgabe: {}
dummy := genealog->rin // Rückgabe: 1, Stimmt so für den ersten Datensatz.
ENDIF
IF genealog->(RLock()) == .T. // Springt über die IF-Schleife. Warum?








IF genealog->(RLock()) == .T.






du arbeitest doch mit Thread ? Also hast du WorkSpaceList() für jeden Thread gemacht ?Jan hat geschrieben:WorkSpaceList() war eine gute Idee! Aber leider auch nicht das Richtige. Die dbf steht wirklich nur 1 mal drin.


Jan hat geschrieben:Moin Jimmy,
ja, ich arbeite mit Threads. Aber in jedem Thread werden die dbf neu geöffnet. Und damit kommen sich die Sperrungen nicht ins Gehege.
Jan hat geschrieben:Abgesehen davon: In dem anderen Thread wird ein anderer Satz gesperrt. Das kann es also auch nicht sein.
IF genealog->(RLock()) == .F.
Do While 123->(!RLock())
EndDo
.... - anweisung
123->(DbUnlock())







Mitglieder in diesem Forum: 0 Mitglieder und 1 Gast