私は、さまざまなサードパーティのライブラリと、.Netでの低遅延シリアル通信へのアプローチを研究してきました。私は十分に読んだので、今では完全に一周し、意見の対立がさまざまであるため、始めたときと同じくらいほとんど知りません。
たとえば、「Microsoftが提供するソリューションはフレームワークのバージョン間で安定しておらず、機能が不足している」という説得力のある記事があったため、フレームワークの機能は除外されました。
古いCOMベースのライブラリの多くをバッシングする記事を見つけました。ガベージコレクションが原因で、低レイテンシの.Netアプリ全体のアイデアを非難する記事を見つけました。
また、低遅延通信を目的としたP / InvokingWindowsAPI機能が受け入れられないことを示す記事も読みました。
このルールは、私が考えることができるあらゆるアプローチについてです!
そこにいた/その経験をした人たちからのいくつかの言葉を本当に感謝します。理想的には、堅実なライブラリ/パートナーを見つけることができ、コミュニケーションライブラリを自分で構築する必要はありません。私には次の簡単な目的があります。
- C#/VB.Netでの持続的な低遅延シリアル通信
- 32/64ビット
- 十分に文書化されている(ソリューションがサードパーティの場合)
- ガベージコレクションによる影響は比較的ありません(通信および遅延に関して)。
- 柔軟性(将来何とインターフェースする必要があるかわかりません!)確かに必要な唯一の要件は、RS485ベースのリニアアクチュエータ、シリアル/マイクロコントローラなどのさまざまな産業用デバイスとインターフェースできる必要があることです。ベースのゲージ、およびModBus(RS485)デバイス。
私の混乱を和らげる可能性のあるコメント、アイデア、考え、記事へのリンクは大歓迎です!