Re: Отчего база не начинает свое создание?
От: Буравчик Россия  
Дата: 25.08.11 05:14
Оценка: 6 (1)
Здравствуйте, AlexNek, Вы писали:

AN>Как бороться?


ProgressWorker.Run — асинхронный метод. Он вызывается параллельно с основным потоком.

В данном коде подразумевается, что будет выполнена реструктуризация, а затем основной поток продолжит выполнение. А на самом деле поток реструктуризации и основной поток работают одновременно. Кто-кого из этих потоков обгонит — не известно.

Вариантов несколько.
Первый — убрать асинхронность (ProgressWorker.Run), т.е. пустить синхронизацию в основном потоке.
Второй — синхронизировать два потока между собой. Я приводил код в [url=http://rsdn.ru/Forum/Message.aspx?mid=4282418&only=1]Re: Ошибки первого запуска
Автор: Буравчик
Дата: 24.05.11
[/url]. Этот же код сейчас в репозитории Януса.
... << RSDN@Home 1.2.0 alpha 4 rev. 1472>>
Best regards, Буравчик
 
Подождите ...
Wait...
Пока на собственное сообщение не было ответов, его можно удалить.