У меня есть поток, который принимает таблицу БД в качестве параметра, у меня возникла проблема, когда я не могу одновременно записать в эту таблицу БД.
1 экземпляр TMyThread может иметь таблицу БД'Member', в то время как у другого может быть 'Staff', однако могут быть случаи, когда два потока открываются с одной и той же таблицей.
Таким образом, мне нужно обернуть код в критический раздел (или аналогичный), но я нене нужны какие-то грязные вещи, такие как несколько сечений, например (fMemberTable, fStaffTable) ...
begin
if fDBTable = 'Member' then
fMemberTable.Enter
else if fDbTable = 'Staff' then
....
У нас есть 8 таблиц, которые могут стать грязными. Есть ли способ сделать
TCricalSection(fMemberTable) Введите желанную;Или какой-то способ сделать это, который легко «масштабировать» и использовать?
Один критический раздел вокруг функции не имеет смысла, так как я не хочу сдерживать другие таблицы ....