MySQL исключение во время обновления в реальном времени - PullRequest
0 голосов
/ 27 апреля 2011

Я создал приложение C #, которое обновляет таблицу базы данных MySQL каждые 10 мс. Приложение создает отдельный поток для каждого обновления. Используя Workbench, я вижу, что существует много соединений, и какое-то время это было довольно успешно. Однако недавно я обнаружил, что после 2-3 часов успешного выполнения я получаю исключение, которое говорит: «Таблица xxxx не найдена». У меня есть чтение и обновление с использованием Entity Framework, как показано ниже

    try
    {
        u5s = (from u in cxt.universe5s
               where u.CATEGORY == tval
               select u).ToList();
        . . .
        u5.PC_CHANGE = chval;
        cxt.SaveChanges();
    }
    catch (Exception myEx)
    {
        //throws my 'table not found' exception here
    }

Использование NET 4.0 и MySql 5.5.9. У кого-нибудь еще есть такой опыт? Может ли это быть вызвано нехваткой соединений? Каков наилучший метод в этом случае для закрытия соединения после сохранения изменений?

С уважением Ричард

1 Ответ

1 голос
/ 27 апреля 2011

Это звучит как проблема параллелизма.Вы можете попытаться заблокировать один объект подключения.Это также уменьшит нагрузку на сервер.

Подробнее см. http://msdn.microsoft.com/en-us/library/c5kehkcz%28v=vs.80%29.aspx.

Надеюсь, это поможет.

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