Использование ошибки ввода-вывода транзакций SQLite - PullRequest
0 голосов
/ 17 апреля 2010

В настоящее время у меня есть настройка клиент / сервер, где клиент отправляет данные на сервер, а затем сервер сохраняет данные в файл базы данных SQLite. Для этого я использую транзакции, которые прекрасно работают в Windows 7, когда я запускаю около 30 клиентов (каждый клиент отправляет данные обратно в течение 5-30 секунд).

При использовании одного и того же программного обеспечения в Windows XP, я могу получить / установить данные несколько раз без проблем, пока я не запустил около 20 клиентов, и я начал получать сообщения об ошибках Windows Delayed: альтернативный текст http://files.me.com/james.ingham/on1qb1

Это вызывает исключение на сервере: альтернативный текст http://files.me.com/james.ingham/hjoodv

Я предполагаю, что это связано либо с XP, либо с аппаратной проблемой на компьютере, на котором запущена XP.

У кого-нибудь есть совет, чтобы избежать этого? Или я должен просто перехватить исключение и повторить попытку сохранения данных?

Ответы [ 2 ]

1 голос
/ 19 апреля 2010

Прошу прощения за упоминание об этом, но сам SQLite не рекомендуется в среде с высокой одновременностью. Если у вас до 20 клиентов с транзакциями продолжительностью 5-30 секунд, вы обязательно поймаете тайм-аут (который по умолчанию составляет 5 секунд в SQLite), поскольку SQLite в основном заменяет fopen .

0 голосов
/ 20 апреля 2010

Извините, что отвечаю на мой вопрос, но это аппаратная проблема Просто если кто-нибудь еще натолкнется на это!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...