簡體   English   中英

事件重入問題。 相同事件同時運行

[英]Event reentry issue. Same event running concurrently

我有一個在很多情況下會觸發多次的事件,但是我希望在下一個事件運行之前完成一個事件。

我正在嘗試創建一個加密貨幣交易機器人。 有問題的事件是private void CoinInformation_OnNewTradeEvent(object sender, AggregateTradeEventArgs e)

由於單個事件會觸發多次,因此我一直認為它將以同步方式執行,即當一個事件運行時,下一個事件將一直運行直到完成。 我試過把鎖,但意識到那是行不通的。

private void CoinInformation_OnNewTradeEvent(object sender, AggregateTradeEventArgs e)
    {
        lock(myObject)
        {
            try
            {
                Decimal currentTradePrice = e.Trade.Price;

                UpdateSMA(currentTradePrice);

                TryBuy(currentTradePrice);

                TrySell(currentTradePrice);

                TryStopLoss(currentTradePrice);
            }
            catch
            {
                return;
            }


        }

    }

抱歉,我的TryBuy和TrySell似乎不同步,我沒有等他們,所以有重入。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM