DDEサーバーへの明示的なリクエストが遅い |
|
| RSSのログをとってファイルに出力する処理を書いてみた。CSVファイル形式で出力すればいつでもEXCELで見ることができてデバッグにも都合が良いと思ったのですが、まだはっきりとは確認していないけど、それだと1日あたり15MBくらいになりそう。バイナリ形式で出力したほうがいいのかもしれないと思ったのですが、今の段階ではまだテストが全然出来ていない状態なので、見た目でおかしいところを簡単に判断できるようにEXCELで扱えたほうがよいと考えてそのままにしています。 前からちょっと気になっていたのですがRSSが一度接続できないとその後も接続できないという問題が発生していました。こちら側で勝手にライブラリ側の問題だろうと思い違いをしていたのですが、どうやらこちら側のミスだったらしい模様。ひとつのTRY~CATCHの中にDDEリクエストをするコードとDDEイベントを開始するコードを一緒に書いていて、そのうちのリクエストの方が失敗するとDDEイベントの開始ができなくなるという単純ミス。リクエストは失敗しても、その後DDEイベントを開始するコードが上手くいけば、とりあえずは問題無いようです。 ただ、DDEのイベントは値が変化するまで呼ばれないため、アプリを起動する前から全然値が変わらないようなDDEアイテム(前日終値とか)は、イベントを待っていてもいつまでも取得できないままという状態になります。その場合はやはりDDEリクエストが必要になるわけですが、このDDEリクエストが何か遅い。マルチスレッドにしてみようと思って色々やってみたのですが失敗。デバッガで見るとDDEの例外コード16387番というのが出てくるのですが、DDEML列挙子の値の内容とか載っているサイトが見当たらなかったです(もうマイクロソフト自体が半分捨てたような技術だしなあ……)。起動して1分も2分も動かないようなアプリは流石に使い難いので何とかしなければ。前日の値とかは一日を通して固定されているし、どこか別のところから拾ってきたほうがいいのかも。 完成には日に日に近づいてきているようにも思うのですが、結構遠そう…… |∧∧ |・ω・) ダレモイナイ... |⊂ バルタン スルナラ | イマノウチ...
フォッフォッフォッ (V)∧_∧(V) ヽ(・ω・)ノ / / ノ ̄ゝ
フォッフォッフォッフォッフォッ (V)∧_∧(V) ヽ( )ノ / / ......ノ ̄ゝ
| |
|
6月19日(月) | トラックバック(0) | コメント(0) | 日記 | 管理
|