← Zurück

Одинаковый код работает по-разному на 2 машинах

Здравствуйте! Имеем следующий простой код по подключению к квику:


namespace test
{
    using System;
    using System.Collections.Generic;
    using System.Linq;
    using System.Threading;
    using System.IO;

    using StockSharp.BusinessEntities;
    using StockSharp.Quik;
    using StockSharp.Algo;
    using StockSharp.Messages;

    class Program
    {
        private volatile static bool conn = false;

        static void Main()
        {
            try
            {
                using (var quikTrader = new QuikTrader(QuikTerminal.GetDefaultPath()))
                {
                    quikTrader.Connected += () =>
                    {
                        conn = true;
                    };

                    quikTrader.Connect();

                    while (!conn) ;

                    Console.WriteLine("connected");
                }
            }
            catch (Exception ex)
            {
                Console.WriteLine(ex);
            }
        }
    }
}

На одном ноутбуке стоит Windows 8, Microsoft VS 2013, .NET Framework 4.5.1. На втором Windows XP, Microsoft VC# Express 2010, .NET Framework 4

На первом ноуте работает нормально, на втором - висит в бесконечном цикле (т.е. не подключается к квику). В чём может быть проблема?

War dieses Thema hilfreich?

Thema teilen

Kommentare (5)

Anmelden oder Konto erstellen, Melden Sie sich an oder registrieren Sie sich, um einen Kommentar zu hinterlassen

Mikhail Sukhov
Mikhail Sukhov

Вот, а все хают 8-ку, мол майкрософт делает хуже и хуже операционки. А тут наглядный пример, как говно-код, который и работать то не должен по определению, нормально работает в новой операционке.

Andrii
Andrii

как бы не от ос зависит, ну да ладно

Валентин Лебедев
Валентин Лебедев

Библиотека уже давно переведена на .NET 4.5.1, так что XP можешь смело выкидывать, там вообще вряд ли что-то будет работать.

while (!conn) ; это конечно Ад.

beast
beast Autor

Библиотека уже давно переведена на .NET 4.5.1, так что XP можешь смело выкидывать, там вообще вряд ли что-то будет работать.

while (!conn) ; это конечно Ад.

а что в этой конструкции неправильного? я просто недавно начал пользоваться стокшарпом и c#

Валентин Лебедев
Валентин Лебедев

Поизучай примеры, которые лежат в архиве с библиотекой.