Error_System.NullReferenceException

спам ошибок в логе

  1. Locus Neminis

    Регистрация:
    04.06.19
    Сообщения:
    4
    Был на сайте:
    29.07.19

    Программа в какой-то момент времени начинает спамить ошибки в лог. При открытии журнала подвисает на несколько минут.

    Файл PrimeLog_2019_7_4.txt занимает 7,27 Мб, все ошибки однотипные.

    Торговля на реальном счете, никаких манипуляций с портфелем не делаю, в торговлю робота не вмешиваюсь.

    04.07.2019 10:55:11_User_Запуск OsTraderMaster. Включение программы04.07.2019 10:55:12_System_Создан новый бот RR_Clean
    04.07.2019 10:55:22_System_Создан сервер Transaq
    04.07.2019 12:13:28_Error_System.NullReferenceException: Ссылка на объект не указывает на экземпляр объекта.
    в OsEngine.Market.ServerMasterPortfoliosPainter.<>c__DisplayClass12_0.b__0(Portfolio p) в D:\OsEngine-master\project\OsEngine\Market\ServerMasterPortfoliosPainter.cs:строка 235
    в System.Collections.Generic.List`1.FindAll(Predicate`1 match)
    в OsEngine.Market.ServerMasterPortfoliosPainter.RePaintPortfolio() в D:\OsEngine-master\project\OsEngine\Market\ServerMasterPortfoliosPainter.cs:строка 235
    04.07.2019 12:13:28_Error_System.NullReferenceException: Ссылка на объект не указывает на экземпляр объекта.
    в OsEngine.Market.ServerMasterPortfoliosPainter.<>c__DisplayClass6_1.<_server_PortfoliosChangeEvent>b__0(Portfolio portfolio) в D:\OsEngine-master\project\OsEngine\Market\ServerMasterPortfoliosPainter.cs:строка 142
    в System.Collections.Generic.List`1.Find(Predicate`1 match)
    в OsEngine.Market.ServerMasterPortfoliosPainter._server_PortfoliosChangeEvent(List`1 portfolios) в D:\OsEngine-master\project\OsEngine\Market\ServerMasterPortfoliosPainter.cs:строка 142
    04.07.2019 12:13:28_Error_System.NullReferenceException: Ссылка на объект не указывает на экземпляр объекта.
    в OsEngine.Market.ServerMasterPortfoliosPainter.<>c__DisplayClass6_1.<_server_PortfoliosChangeEvent>b__0(Portfolio portfolio) в D:\OsEngine-master\project\OsEngine\Market\ServerMasterPortfoliosPainter.cs:строка 142
    в System.Collections.Generic.List`1.Find(Predicate`1 match)
    в OsEngine.Market.ServerMasterPortfoliosPainter._server_PortfoliosChangeEvent(List`1 portfolios) в D:\OsEngine-master\project\OsEngine\Market\ServerMasterPortfoliosPainter.cs:строка 142
    04.07.2019 12:13:29_Error_System.NullReferenceException: Ссылка на объект не указывает на экземпляр объекта.
    в OsEngine.Market.ServerMasterPortfoliosPainter.<>c__DisplayClass6_1.<_server_PortfoliosChangeEvent>b__0(Portfolio portfolio) в D:\OsEngine-master\project\OsEngine\Market\ServerMasterPortfoliosPainter.cs:строка 142
    в System.Collections.Generic.List`1.Find(Predicate`1 match)
    в OsEngine.Market.ServerMasterPortfoliosPainter._server_PortfoliosChangeEvent(List`1 portfolios) в D:\OsEngine-master\project\OsEngine\Market\ServerMasterPortfoliosPainter.cs:строка 142
    04.07.2019 12:13:29_Error_System.NullReferenceException: Ссылка на объект не указывает на экземпляр объекта.
    в OsEngine.Market.ServerMasterPortfoliosPainter.<>c__DisplayClass12_0.b__0(Portfolio p) в D:\OsEngine-master\project\OsEngine\Market\ServerMasterPortfoliosPainter.cs:строка 235
    в System.Collections.Generic.List`1.FindAll(Predicate`1 match)
    в OsEngine.Market.ServerMasterPortfoliosPainter.RePaintPortfolio() в D:\OsEngine-master\project\OsEngine\Market\ServerMasterPortfoliosPainter.cs:строка 235

    Locus Neminis
    04.07.2019 19:33
    #1
  2. Andrey87-09

    Регистрация:
    22.09.16
    Сообщения:
    41
    Был на сайте:
    30.06.23
    Цитата: Locus Neminis

    Программа в какой-то момент времени начинает спамить ошибки в лог. При открытии журнала подвисает на несколько минут.

    Файл PrimeLog_2019_7_4.txt занимает 7,27 Мб, все ошибки однотипные.

    Торговля на реальном счете, никаких манипуляций с портфелем не делаю, в торговлю робота не вмешиваюсь.

    04.07.2019 10:55:11_User_Запуск OsTraderMaster. Включение программы04.07.2019 10:55:12_System_Создан новый бот RR_Clean
    04.07.2019 10:55:22_System_Создан сервер Transaq
    04.07.2019 12:13:28_Error_System.NullReferenceException: Ссылка на объект не указывает на экземпляр объекта.
    в OsEngine.Market.ServerMasterPortfoliosPainter.<>c__DisplayClass12_0.b__0(Portfolio p) в D:\OsEngine-master\project\OsEngine\Market\ServerMasterPortfoliosPainter.cs:строка 235
    в System.Collections.Generic.List`1.FindAll(Predicate`1 match)
    в OsEngine.Market.ServerMasterPortfoliosPainter.RePaintPortfolio() в D:\OsEngine-master\project\OsEngine\Market\ServerMasterPortfoliosPainter.cs:строка 235
    04.07.2019 12:13:28_Error_System.NullReferenceException: Ссылка на объект не указывает на экземпляр объекта.
    в OsEngine.Market.ServerMasterPortfoliosPainter.<>c__DisplayClass6_1.<_server_PortfoliosChangeEvent>b__0(Portfolio portfolio) в D:\OsEngine-master\project\OsEngine\Market\ServerMasterPortfoliosPainter.cs:строка 142
    в System.Collections.Generic.List`1.Find(Predicate`1 match)
    в OsEngine.Market.ServerMasterPortfoliosPainter._server_PortfoliosChangeEvent(List`1 portfolios) в D:\OsEngine-master\project\OsEngine\Market\ServerMasterPortfoliosPainter.cs:строка 142
    04.07.2019 12:13:28_Error_System.NullReferenceException: Ссылка на объект не указывает на экземпляр объекта.
    в OsEngine.Market.ServerMasterPortfoliosPainter.<>c__DisplayClass6_1.<_server_PortfoliosChangeEvent>b__0(Portfolio portfolio) в D:\OsEngine-master\project\OsEngine\Market\ServerMasterPortfoliosPainter.cs:строка 142
    в System.Collections.Generic.List`1.Find(Predicate`1 match)
    в OsEngine.Market.ServerMasterPortfoliosPainter._server_PortfoliosChangeEvent(List`1 portfolios) в D:\OsEngine-master\project\OsEngine\Market\ServerMasterPortfoliosPainter.cs:строка 142
    04.07.2019 12:13:29_Error_System.NullReferenceException: Ссылка на объект не указывает на экземпляр объекта.
    в OsEngine.Market.ServerMasterPortfoliosPainter.<>c__DisplayClass6_1.<_server_PortfoliosChangeEvent>b__0(Portfolio portfolio) в D:\OsEngine-master\project\OsEngine\Market\ServerMasterPortfoliosPainter.cs:строка 142
    в System.Collections.Generic.List`1.Find(Predicate`1 match)
    в OsEngine.Market.ServerMasterPortfoliosPainter._server_PortfoliosChangeEvent(List`1 portfolios) в D:\OsEngine-master\project\OsEngine\Market\ServerMasterPortfoliosPainter.cs:строка 142
    04.07.2019 12:13:29_Error_System.NullReferenceException: Ссылка на объект не указывает на экземпляр объекта.
    в OsEngine.Market.ServerMasterPortfoliosPainter.<>c__DisplayClass12_0.b__0(Portfolio p) в D:\OsEngine-master\project\OsEngine\Market\ServerMasterPortfoliosPainter.cs:строка 235
    в System.Collections.Generic.List`1.FindAll(Predicate`1 match)
    в OsEngine.Market.ServerMasterPortfoliosPainter.RePaintPortfolio() в D:\OsEngine-master\project\OsEngine\Market\ServerMasterPortfoliosPainter.cs:строка 235

    ошибка возникает в момент, когда пытаетесь открыть журнал?

    Andrey87-09
    08.07.2019 16:46
    #2
  3. Locus Neminis

    Регистрация:
    04.06.19
    Сообщения:
    4
    Был на сайте:
    29.07.19

    Да, ошибка была при отрисовке портфеля. Я поставил проверки в соответствующих местах (строки 142 и 235 ServerMasterPortfoliosPainter.cs), после этого ошибок не было:

    for (int i = 0; i < portfolios.Count; i++)
    {
    Portfolio portf = new Portfolio(); // моё
    if (portfolios[i] != null) // моё
    portf = _portfolios.Find(portfolio => portfolio.Number == portfolios[i].Number); // было: Portfolio portf = _portfolios.Find(portfolio => portfolio.Number == portfolios[i].Number);
    Locus Neminis
    09.07.2019 19:58
    #3