タイマー - ページ 7 12345678 新しいコメント pusheax 2012.05.17 13:13 #61 Yurich: すらも) そうでなければ、OnTickハンドラでグローバル変数を 変更できるのは、タイマーイベントが発生してプログラムが切り替わったときだけという中途半端な説明にならざるを得ないからだ。 TheXpert 2012.05.17 13:23 #62 MessageBoxを 軽率に使わないでください。 Документация по MQL5: Стандартные константы, перечисления и структуры / Константы ввода/вывода / MessageBox www.mql5.com Стандартные константы, перечисления и структуры / Константы ввода/вывода / MessageBox - Документация по MQL5 Vladimir Gomonov 2012.05.17 13:32 #63 pusheax: この方が開発者にとっては楽でしょう。そうでなければ、タイマーイベントが発生してプログラムが切り替わったときに、OnTickハンドラでグローバル変数を 途中からしか変更できないことを説明しなければならないからです。 そのために短い「途切れないブロック」があるのです。割り込みはとにかく完了するのを待ち、その後中断します。 Vladimir Gomonov 2012.05.17 13:34 #64 Yurich: すらも) その通りです。 Yury Kulikov 2012.05.17 13:34 #65 TheXpert: 何も考えずにMessageBoxを 使うのはやめよう。 そのため、YuTradeではイベントをスキップしないように、2つのスレッドを作る必要がありました。そして、割り込みがあれば、すべてが1つのスレッドになります。 pusheax 2012.05.17 13:35 #66 MetaDriver: そのために短い「途切れないブロック」があるのです。いずれにしても完了するのを待ってから割り込みをかける。しかも、そんなことはまったくわからず、中断してデータが完全に処理されないかもしれないという前提で書いていました。処理の開始と終了のフラグを設定する。 削除済み 2012.05.17 13:40 #67 Yurich: 割り込みとは、OnTickが実行されているときに、OnTimerなどのより重要なイベントが到来した場合です。OnTickの実行を一時停止し、OnTimerのコードを実行した後、再度OnTickを実行します。 全てにおいて、何らかのマルチスレッドが必要です。 TheXpert 2012.05.17 13:42 #68 Yurich: そして、割り込みがあれば、すべてが同じスレッドになる。 ああ、悪い言い分だ。今のままでいい--。 Vladimir Gomonov 2012.05.17 13:46 #69 pusheax:しかも、全く知らなかったので、中断してデータが処理しきれない可能性がある状態で書きました。処理の開始と終了にフラグを立てました。ほら、もう半分くらいまで来ているから、安全に入れるよ。;) pusheax 2012.05.17 13:48 #70 Interesting: 幼稚園全般で、少なくともある程度のマルチスレッドは必要です。 もしかしたら、そのうち開発者が追加してくれるかもしれません。CreateThread(NULL,0,CaptureThread,0,CREATE_SUSPENDED,&ThreadId); ? 12345678 新しいコメント 取引の機会を逃しています。 無料取引アプリ 8千を超えるシグナルをコピー 金融ニュースで金融マーケットを探索 新規登録 ログイン スペースを含まないラテン文字 このメールにパスワードが送信されます エラーが発生しました Googleでログイン WebサイトポリシーおよびMQL5.COM利用規約に同意します。 新規登録 MQL5.com WebサイトへのログインにCookieの使用を許可します。 ログインするには、ブラウザで必要な設定を有効にしてください。 ログイン/パスワードをお忘れですか? Googleでログイン
すらも)
この方が開発者にとっては楽でしょう。そうでなければ、タイマーイベントが発生してプログラムが切り替わったときに、OnTickハンドラでグローバル変数を 途中からしか変更できないことを説明しなければならないからです。
すらも)
何も考えずにMessageBoxを 使うのはやめよう。
そのために短い「途切れないブロック」があるのです。いずれにしても完了するのを待ってから割り込みをかける。
しかも、そんなことはまったくわからず、中断してデータが完全に処理されないかもしれないという前提で書いていました。
処理の開始と終了のフラグを設定する。
割り込みとは、OnTickが実行されているときに、OnTimerなどのより重要なイベントが到来した場合です。OnTickの実行を一時停止し、OnTimerのコードを実行した後、再度OnTickを実行します。
そして、割り込みがあれば、すべてが同じスレッドになる。
しかも、全く知らなかったので、中断してデータが処理しきれない可能性がある状態で書きました。
処理の開始と終了にフラグを立てました。
ほら、もう半分くらいまで来ているから、安全に入れるよ。
;)
幼稚園全般で、少なくともある程度のマルチスレッドは必要です。