aspirant
|
Date: 4/22/2011
Mikhail Sukhov:
В client_rounter.ini что написано? Какой порт?
; TCP-порт, на котором слушает роутер
;port=4001
port=3001
Правил сам
|
|
|
|
Thanks:
|
|
|
|
|
|
Mikhail Sukhov
|
Date: 4/22/2011
aspirant:
Mikhail Sukhov:
В client_rounter.ini что написано? Какой порт?
; TCP-порт, на котором слушает роутер
;port=4001
port=3001
>
> Правил сам
Тоесть, значение по умолчанию 4001? А в чем смысл тогда было исправить на 3001?
|
|
|
|
Thanks:
|
|
|
|
|
|
aspirant
|
Date: 4/22/2011
Mikhail Sukhov:
Тоесть, значение по умолчанию 4001? А в чем смысл тогда было исправить на 3001?
Чтобы работало[smile]. У тебя там дальше вот так?
[ROUTEINFO]
; настройка соединений роутера с вышестоящими серверами.
; формат строки: {default|direct} = {ip-адрес | имя FQDN}:{номер порта}
; Должно быть одно дефолтное соединение и может быть от нуля до нескольких директных.
; Об адресах, на котрорые можно и нужно устанавливать дефолтные и директные соединения, проконсультируйтесь
; со службой тех. поддержки!!! В дистрибутиве указана рекомендуемая настройка для соединения с пулом серверов РТС.
;default=p2forts.rts.ru:4001
default=beta-forts.rts.ru:3001
Тоже правил сам.
|
|
|
|
Thanks:
|
|
|
|
|
|
Mikhail Sukhov
|
Date: 4/22/2011
aspirant:
Mikhail Sukhov:
Тоесть, значение по умолчанию 4001? А в чем смысл тогда было исправить на 3001?
Чтобы работало[smile]. У тебя там дальше вот так?
У меня работает и с 4001 и с 3001. Может оставим тот, который по умолчанию после установки идет?
|
|
|
|
Thanks:
|
|
|
|
|
|
Mikhail Sukhov
|
Date: 5/1/2011
aspirant:
Mikhail Sukhov:
Зачем нужна такая конструкция?
ThreadPool.QueueUserWorkItem(s =>
{
//WaitHandle.WaitAll(new[] { _futuresQuotesOnline, _futuresSessionOnline, _optionQuotesOnline, _optionSessionOnline });
WaitHandle.WaitAll(new[] { _futuresQuotesOnline, _optionQuotesOnline });
>
> Ты имеешь в виду, зачем запускать этот кусок в отдельном потоке?
Не увидел твоего ответа... Зачем вообще нужны WaintHandle-ы? Что блокируется и для чего?
|
|
|
|
Thanks:
|
|
|
|
|
|
Mikhail Sukhov
|
Date: 5/6/2011
Mikhail Sukhov:
aspirant:
Mikhail Sukhov:
Зачем нужна такая конструкция?
ThreadPool.QueueUserWorkItem(s =>
{
//WaitHandle.WaitAll(new[] { _futuresQuotesOnline, _futuresSessionOnline, _optionQuotesOnline, _optionSessionOnline });
WaitHandle.WaitAll(new[] { _futuresQuotesOnline, _optionQuotesOnline });
> >
> > Ты имеешь в виду, зачем запускать этот кусок в отдельном потоке?
>
> Не увидел твоего ответа... Зачем вообще нужны WaintHandle-ы? Что блокируется и для чего?
Ок, раз никто не знает, можно удалять?[laugh]
|
|
|
|
Thanks:
|
|
|
|
|
|
aspirant
|
Date: 5/6/2011
|
|
|
|
|
Mikhail Sukhov:
Mikhail Sukhov:
aspirant:
Mikhail Sukhov:
Зачем нужна такая конструкция?
ThreadPool.QueueUserWorkItem(s =>
{
//WaitHandle.WaitAll(new[] { _futuresQuotesOnline, _futuresSessionOnline, _optionQuotesOnline, _optionSessionOnline });
WaitHandle.WaitAll(new[] { _futuresQuotesOnline, _optionQuotesOnline });
> > >
> > > Ты имеешь в виду, зачем запускать этот кусок в отдельном потоке?
> >
> > Не увидел твоего ответа... Зачем вообще нужны WaintHandle-ы? Что блокируется и для чего?
>
> Ок, раз никто не знает, можно удалять?[laugh]
Извини, выпал из процесса на несколько дней и пропустил твое предыдущее сообщение. Вот [здесь](http://stocksharp.com/posts/m/7245/) вы со skuvv'ом писали, что сначала нужно скачать инструменты, а уже потом запускать остальные системные потоки. Именно из-за этого мы ждем, пока не скачается вся информация по инструментам, после чего потоки инструментов перейдут в состояние TDataStreamState.DS_STATE_ONLINE (см. методы OnFuturesQuotesStreamStateChanged / OnOptionQuotesStreamStateChanged), после чего сигнализуруем, что можно запускать остальные потоки.
|
|
|
|
Thanks:
|
|
|
|
|
|
Mikhail Sukhov
|
Date: 5/7/2011
aspirant:
Извини, выпал из процесса на несколько дней и пропустил твое предыдущее сообщение. Вот здесь вы со skuvv'ом писали, что сначала нужно скачать инструменты, а уже потом запускать остальные системные потоки. Именно из-за этого мы ждем, пока не скачается вся информация по инструментам, после чего потоки инструментов перейдут в состояние TDataStreamState.DS_STATE_ONLINE (см. методы OnFuturesQuotesStreamStateChanged / OnOptionQuotesStreamStateChanged), после чего сигнализуруем, что можно запускать остальные потоки.
Понял. Тогда я это удаляю. Оно не нужно, так как теперь используется метод BaseTrader.ProcessSecurityAction.
|
|
|
|
Thanks:
|
|
|
|
|
|
Mikhail Sukhov
|
Date: 5/7/2011
|
|
|
|
|
Mikhail Sukhov:
aspirant:
Извини, выпал из процесса на несколько дней и пропустил твое предыдущее сообщение. Вот здесь вы со skuvv'ом писали, что сначала нужно скачать инструменты, а уже потом запускать остальные системные потоки. Именно из-за этого мы ждем, пока не скачается вся информация по инструментам, после чего потоки инструментов перейдут в состояние TDataStreamState.DS_STATE_ONLINE (см. методы OnFuturesQuotesStreamStateChanged / OnOptionQuotesStreamStateChanged), после чего сигнализуруем, что можно запускать остальные потоки.
Понял. Тогда я это удаляю. Оно не нужно, так как теперь используется метод BaseTrader.ProcessSecurityAction.
За одно вынес все потоки в класс PlazaListenerRegistry. Во время переноса увидел, что потоки в классе PlazaTrader дублируют те, что есть в PlazaListenerRegistry. Первые убрал в пользу вторых. Если юзер коду нужно будет получать данные из основных потоков, пусть подписывается на те же самые события класса PlazaListener, что и PlazaTrader.
|
|
|
|
Thanks:
|
|
|
|
|
|
aspirant
|
Date: 5/7/2011
Mikhail Sukhov:
Понял. Тогда я это удаляю. Оно не нужно, так как теперь используется метод BaseTrader.ProcessSecurityAction.
OK, понятно.
Mikhail Sukhov:
Если юзер коду нужно будет получать данные из основных потоков, пусть подписывается на те же самые события класса PlazaListener, что и PlazaTrader.
Я думал о таком объединении потоков. Решил сделать раздельно, потому, если пользователь запустит в своем обработчике событий некое длительное действие, то застопорится получение системной информации, до тех пор пока не завершится клиентский обработчик событий. А в нашем случае речь идет о миллисекундах. Или я усложняю?
|
|
|
|
Thanks:
|
|
|
|
|