[BUG] System.OutOfMemoryException
Atom
29.07.2011
President


При тестировании на истории через пару виртуальных дней стабильно валится с эксепшном: Exception of type 'System.OutOfMemoryException' was thrown

Я пробовал делать:

	
		GC.Collect();
		GC.WaitForPendingFinalizers();

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

Валится обычно либо на AddInfoLog либо в нердах MarketDepthGenerator'а

Похоже что кто-то накапливает объекты и не отдает их.

Если подскажете как локализовать проблему попробую это сделать.




Спасибо:


< 1 2 
Mikhail Sukhov

Фотография
Дата: 19.08.2011
Ответить


Евгений: У меня сначала была включена студия и свободной памяти было меньше изначально, во время тестирования доходило до 0 и вылетало. А потом я высвободил - изначально стало 1600. Зависло на уровне 340.

Ок, понятнее.. А почему думаете что зависло? Событие ITrader.NewTrades вызывается?

Спасибо:

Евгений

Фотография
Дата: 19.08.2011
Ответить


Mikhail Sukhov:

Евгений: У меня сначала была включена студия и свободной памяти было меньше изначально, во время тестирования доходило до 0 и вылетало. А потом я высвободил - изначально стало 1600. Зависло на уровне 340.

Ок, понятнее.. А почему думаете что зависло? Событие ITrader.NewTrades вызывается?

Появилось сообщение, что программа не отвечает. Я запускал .exe, событие не смотрел

Спасибо:

Mikhail Sukhov

Фотография
Дата: 19.08.2011
Ответить


Евгений: Появилось сообщение, что программа не отвечает. Я запускал .exe, событие не смотрел

Мы сейчас говорим про пример SampleHistoryTesting?

Спасибо:

Евгений

Фотография
Дата: 19.08.2011
Ответить


Mikhail Sukhov:

Евгений: Появилось сообщение, что программа не отвечает. Я запускал .exe, событие не смотрел

Мы сейчас говорим про пример SampleHistoryTesting?

В данном случае там есть мои модификации незначительные. Но я прогнал еще раз пример SampleHistoryTesting по тем же данным 1 поток 5 дней. Инструмент RIU1 с 9.02.2011 по 15.08.2011. Память свободную приложение также задействовало и комп фактически полностью висел (у меня I5 и Озу 4 гб) и высвечивалось, что приложение не отвечает. Но я оставил на несколько часов комп и в конце концов тестирование прошло по всем данным. Попробую еще раз подождать и со своим примером.

Спасибо:

Mikhail Sukhov

Фотография
Дата: 19.08.2011
Ответить


Евгений:

Mikhail Sukhov:

Евгений: Появилось сообщение, что программа не отвечает. Я запускал .exe, событие не смотрел

Мы сейчас говорим про пример SampleHistoryTesting?

В данном случае там есть мои модификации незначительные. Но я прогнал еще раз пример SampleHistoryTesting по тем же данным 1 поток 5 дней. Инструмент RIU1 с 9.02.2011 по 15.08.2011. Память свободную приложение также задействовало и комп фактически полностью висел (у меня I5 и Озу 4 гб) и высвечивалось, что приложение не отвечает. Но я оставил на несколько часов комп и в конце концов тестирование прошло по всем данным. Попробую еще раз подождать и со своим примером.

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

Спасибо:

Евгений

Фотография
Дата: 19.08.2011
Ответить


Mikhail Sukhov:

Евгений:

Mikhail Sukhov:

Евгений: Появилось сообщение, что программа не отвечает. Я запускал .exe, событие не смотрел

Мы сейчас говорим про пример SampleHistoryTesting?

В данном случае там есть мои модификации незначительные. Но я прогнал еще раз пример SampleHistoryTesting по тем же данным 1 поток 5 дней. Инструмент RIU1 с 9.02.2011 по 15.08.2011. Память свободную приложение также задействовало и комп фактически полностью висел (у меня I5 и Озу 4 гб) и высвечивалось, что приложение не отвечает. Но я оставил на несколько часов комп и в конце концов тестирование прошло по всем данным. Попробую еще раз подождать и со своим примером.

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

Если по примеру SampleHistoryTesting, то по памяти - задействовано была вся свободная память-где-то 1,5 гб. Процессор загружен на 50%. Дни меньше 5ти не пробовал. Если по моему примеру, то писал выше.

А еще при попытке остановить тестирование прежде чем оно закончится получается вот это

System.TimeoutException не обработано пользовательским кодом Message=Поток эмуляции не остановился в течении 10 секунд. Source=StockSharp.Algo StackTrace: в StockSharp.Algo.Testing.EmulationTrader.Stop() в SampleHistoryTesting.MainWindow.StartBtn_Click(Object sender, RoutedEventArgs e) в D:\StockSharp_3.2.9_Sources\Samples\Testing\SampleHistoryTesting\MainWindow.xaml.cs:строка 64 в System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised) в System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args) в System.Windows.Controls.Button.OnClick() в System.Windows.Controls.Primitives.ButtonBase.OnMouseLeftButtonUp(MouseButtonEventArgs e) в System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target) в System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised) в System.Windows.UIElement.ReRaiseEventAs(DependencyObject sender, RoutedEventArgs args, RoutedEvent newEvent) в System.Windows.UIElement.OnMouseUpThunk(Object sender, MouseButtonEventArgs e) в System.Windows.RoutedEventArgs.InvokeHandler(Delegate handler, Object target) в System.Windows.EventRoute.InvokeHandlersImpl(Object source, RoutedEventArgs args, Boolean reRaised) в System.Windows.UIElement.RaiseEventImpl(DependencyObject sender, RoutedEventArgs args) в System.Windows.UIElement.RaiseEvent(RoutedEventArgs args, Boolean trusted) в System.Windows.Input.InputManager.ProcessStagingArea() в System.Windows.Input.InputManager.ProcessInput(InputEventArgs input) в System.Windows.Input.InputProviderSite.ReportInput(InputReport inputReport) в System.Windows.Interop.HwndMouseInputProvider.ReportInput(IntPtr hwnd, InputMode mode, Int32 timestamp, RawMouseActions actions, Int32 x, Int32 y, Int32 wheel) в System.Windows.Interop.HwndMouseInputProvider.FilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled) в System.Windows.Interop.HwndSource.InputFilterMessage(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled) в MS.Win32.HwndWrapper.WndProc(IntPtr hwnd, Int32 msg, IntPtr wParam, IntPtr lParam, Boolean& handled) в MS.Win32.HwndSubclass.DispatcherCallbackOperation(Object o) в System.Windows.Threading.ExceptionWrapper.InternalRealCall(Delegate callback, Object args, Boolean isSingleParameter) в System.Windows.Threading.ExceptionWrapper.TryCatchWhen(Object source, Delegate callback, Object args, Boolean isSingleParameter, Delegate catchHandler) InnerException:

Спасибо:

Mikhail Sukhov

Фотография
Дата: 21.08.2011
Ответить


А еще при попытке остановить тестирование прежде чем оно закончится получается вот это

System.TimeoutException не обработано пользовательским кодом Message=Поток эмуляции не остановился в течении 10 секунд. Source=StockSharp.Algo

Да, с этим проблема концептуального характера. Похоже, нет возможности сделать метод Stop блокирующим. Придется делать его как и для стратегий - асинхронным.

Спасибо:
< 1 2 

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

loading
clippy