ソフトウェア (LabView) から C++ (VS2012) で記述された DLL を呼び出し、FTP 経由でサーバーにファイルをアップロードします。
DLL がファイル (15MB) をアップロードしている間、LabView は他のタスクを続行できません。この問題はどのように解決できますか?
ソフトウェア (LabView) から C++ (VS2012) で記述された DLL を呼び出し、FTP 経由でサーバーにファイルをアップロードします。
DLL がファイル (15MB) をアップロードしている間、LabView は他のタスクを続行できません。この問題はどのように解決できますか?
呼び出しをスレッドセーフにするためにC++側で何をしなければならないかに関係なく、UIスレッドで実行されないようにLabVIEWで呼び出しを構成する必要があります(安全上の理由から、これがデフォルトの構成であると私は信じています)。ノードをダブルクリックし、任意のスレッドで実行オプションを選択します。
また、それを独自のスレッドで確実に実行したい場合は、それを別のVIに配置し、そのVIの実行設定を変更して別の実行システムで実行することができます。LabVIEWはスレッドを独自に管理するため、スレッドを直接制御することはできませんが、これによりVIは別のスレッドで実行されるはずです。
FTP での操作は長期的です。このような操作は別のスレッドで実行することをお勧めします。