Работа с таблицей

  • Автор темы Автор темы one
  • Дата начала Дата начала

one

Client
Регистрация
22.09.2015
Сообщения
7 020
Реакции
1 315
Баллы
113
Извечная проблема при моногопотоке в работе с таблицами. Потерял ссылку на снипет, где то был подобный на форуме. Может кто напомнит\подскажет.

До 15й страницы данного раздела дошел и ничего, но помню точно что было выложено или кто то мне давал. Метод часто используемый.

Есть файл-таблица с данными аккаунтов username;password. Нужно взять строку с удалением, значения положить в переменные и записать строку обратно в конец таблицы. Процесс должен быть залочен для многопотока.
 
Последнее редактирование:
C#:
Развернуть Свернуть Копировать
IZennoTable table = project.Tables["Table"]; // таблица проекта
int rowNum = 0; // номер строки, которую брать
lock (SyncObjects.TableSyncer) {
    string[] cells = table.GetRow(rowNum).ToArray();
    project.Variables["username"].Value = cells[0];
    project.Variables["password"].Value = cells[1];
    table.DeleteRow(rowNum);
    table.AddRow(cells);
}
 
  • Оценить
Реакции: Igorii и one
Спасибо! То что нужно! Только вот одного не могу понять, в чем причина? Что экшенами, что снипетом запись в файл происходит с задержкой в секунд 5 что не может настораживать в работе многопотока.
 
Работа с таблицей проекта (удаление/добавление данных) происходит практически моментально, только сам файл обновляется с задержкой (время зависит от железа) и в твоем случае это ни на что не влияет.
 

Кто просматривает тему: (Всего: 0, Пользователи: 0, Гости: 0)