﻿<?xml version="1.0" encoding="utf-8"?>
<?xml-stylesheet type='text/css' href='https://stocksharp.com/css/style.css'?>
<?xml-stylesheet type='text/css' href='https://stocksharp.com/css/bbeditor.css'?>
<feed xmlns="http://www.w3.org/2005/Atom">
  <title type="html">Быстродействие</title>
  <id>~/topic/2054/bystrodeistvie/</id>
  <rights type="text">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  <updated>2026-06-14T19:27:02Z</updated>
  <logo>https://stocksharp.com/images/logo.png</logo>
  <link href="https://stocksharp.com/handlers/atom.ashx?category=topic&amp;id=2054" rel="self" type="application/rss+xml" />
  <entry>
    <id>https://stocksharp.com/posts/m/12682/</id>
    <title type="text">Alexander Mukhanchikov: конкатенация строк занимает как раз эти 2мс которые проходят попробуйте Stri...</title>
    <published>2011-10-25T11:57:43Z</published>
    <updated>2011-10-25T11:57:43Z</updated>
    <author>
      <name>skuvv</name>
      <uri>https://stocksharp.com/users/28621/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;blockquote&gt;
&lt;p&gt;&lt;strong&gt;&lt;a href="@message(12681)" rel="nofollow" target="_blank"&gt;Alexander Mukhanchikov&lt;/a&gt;:&lt;/strong&gt;
конкатенация строк занимает как раз эти 2мс которые проходят
попробуйте Stringbuilder
сделал тест на конкатенацию строки:
&lt;mark&gt;            DateTime start = DateTime.Now;
string timefmt = &amp;quot;HH:mm:ss.fff&amp;quot;;
int id = 100500;
int tdId = 123123;
string name = &amp;quot;name&amp;quot;;
for (int i = 0; i &amp;lt; 1000000; i++)
{
string str = &amp;quot;&amp;quot;;
str += DateTime.Now.ToString(timefmt) + &amp;quot; [parse_order] &amp;quot; + id + &amp;quot; &amp;quot; + tdId + name;&lt;/p&gt;
&lt;/blockquote&gt;
&lt;pre&gt;&lt;code&gt;        }
        DateTime end = DateTime.Now;
        Console.WriteLine( (end-start).TotalMilliseconds);
        Console.ReadLine();&amp;lt;/mark&amp;gt;
&lt;/code&gt;&lt;/pre&gt;
&lt;p&gt;Результат в районе 2200мс = 0.0022мс на 1 строку, основное время при этом тратится на DateTime.Now.ToString(timefmt) около 70%
Задержки явно не в приведенном выше коде. Очень хочется разобраться...&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/12681/</id>
    <title type="text">конкатенация строк занимает как раз эти 2мс которые проходят попробуйте Stringbuilder </title>
    <published>2011-10-25T11:41:13Z</published>
    <updated>2011-10-25T11:41:13Z</updated>
    <author>
      <name>Alexander</name>
      <uri>https://stocksharp.com/users/2826/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;конкатенация строк занимает как раз эти 2мс которые проходят
попробуйте Stringbuilder&lt;/p&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
  <entry>
    <id>https://stocksharp.com/posts/m/12680/</id>
    <title type="text">Добрый день. Хочу разобраться по теме быстродействия. Записал логи прохождения пары заявок, вот одна...</title>
    <published>2011-10-25T11:34:26Z</published>
    <updated>2011-10-25T11:34:26Z</updated>
    <author>
      <name>skuvv</name>
      <uri>https://stocksharp.com/users/28621/</uri>
      <email>info@stocksharp.com</email>
    </author>
    <content type="html">&lt;p&gt;Добрый день.
Хочу разобраться по теме быстродействия.
Записал логи прохождения пары заявок, вот одна из них:&lt;/p&gt;
&lt;blockquote&gt;
&lt;p&gt;15:09:39.739 [Sending New Order] SRZ1 Buy Price: 0 Qty: 1 Thread: null
15:09:39.764 [Sending New Order] SRZ1 quikOrderID:0 Thread: null
15:09:40.009 [parse_order] 5584936686 54501178 Thread: null
15:09:40.011 [_trader_OrdersChanged] 5584936686 order status Active Thread: null
15:09:40.024 [_trader_OrdersChanged] 5584936686 order Accepted Accepted Thread: null
15:09:40.109 Thread: EventDispatcher thread #мои сделки
15:09:40.112 Thread: EventDispatcher thread #заявки
15:09:40.120 [parse_order] 5584936686 54501178 Thread: EventDispatcher thread #заявки
15:09:40.124 [_trader_OrdersChanged] 5584936686 order status Done Thread: EventDispatcher thread #заявки
15:09:40.126 [_trader_OrdersChanged] 5584936686 order Filled Accepted Thread: EventDispatcher thread #заявки
15:09:40.132 [_trader_NewMyTrades] 5584936686 8412 1 Thread: EventDispatcher thread #мои сделки
15:09:40.154 Thread: EventDispatcher thread #заявки
15:09:40.157 [parse_order] 5584936686 54501178 Thread: EventDispatcher thread #заявки
15:09:40.159 [_trader_OrdersChanged] 5584936686 order status Done Thread: EventDispatcher thread #заявки
15:09:40.161 [_trader_OrdersChanged] 5584936686 order Filled Accepted Thread: EventDispatcher thread #заявки
15:09:40.165 Thread: EventDispatcher thread #заявки
15:09:40.169 [parse_order] 5584936686 54501178 Thread: EventDispatcher thread #заявки
15:09:40.171 [_trader_OrdersChanged] 5584936686 order status Done Thread: EventDispatcher thread #заявки
15:09:40.174 [_trader_OrdersChanged] 5584936686 order Filled Accepted Thread: EventDispatcher thread #заявки
Кусок кода метода парсинга ордера:
&lt;mark&gt;Console.WriteLine(DateTime.Now.ToString(timefmt) + &amp;quot; [parse_order] &amp;quot; + order.Id + &amp;quot; &amp;quot; + order.TransactionId + ThreadName);
switch (order.Status)
{
case StockSharp.BusinessEntities.OrderStatus.Accepted:
{
switch (order.State)
{
case OrderStates.Active:
{
Console.WriteLine(DateTime.Now.ToString(timefmt) + &amp;quot; &amp;quot; + &amp;quot;[_trader_OrdersChanged] &amp;quot;+order.Id+&amp;quot; order status Active&amp;quot;+ThreadName);
....
....&lt;/mark&gt;
Вопрос - почему так долго выполняется код между [parse_order] и [_trader_OrdersChanged] ?
Когда событие происходит в основном потоке(name = null), понятно что там может мешать что угодно.
Но когда событие идет в потоке #заявки, там нечему мешать.&lt;/p&gt;
&lt;/blockquote&gt;
</content>
    <rights type="html">Copyright @ StockSharp Platform LLC 2010 - 2025</rights>
  </entry>
</feed>