問題タブ [qnetworkreply]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
0 に答える
1212 参照

qt - QNetworkAccessManager と QNetworkReply によるタイムアウト処理

ネットワーク タイムアウト検出のための QNetworkAccessManager と QTimers のタイミングの問題に直面しています。ただし、これらの QTimer をいつ開始するかは明確ではありません。

最初の試みは、get リクエストの直後にタイマーを開始することでした。しかし、これは高負荷下での早期アボートにつながります。どうやら QNetworkAccessManager は独自のキューイングを行い、リクエストを送信する前にタイムアウトが発生します。

QNetworkAccessManager::uploadProgress()2 番目の試行は、最初のまたは内でタイマーを開始することQNetworkAccessManager::uploadProgress()でしたが、これはネットワーク接続がない場合には機能しません。明らかに、報告する進行状況はまったくなく、タイムアウトはそもそも開始されていません。

この問題に直面するのは私たちだけではないようです。

ありがとう!

0 投票する
1 に答える
669 参照

c++ - QNetworkAccessManager->Post() を使用すると、アプリケーションの終了時に SEGV が発生する

****更新: Windows でのみ segfault が発生することに気付きましたが、Linux では問題ありません。Windows では、QT 5.5 と MinGW32 を使用しています。その理由を今でも知りたいです。

**** 最初の質問: 特に難しいことはありません。基本的なコンソール アプリケーションを作成します。Post() リクエストを送信する QNetworkAccessManager があります。コンソールを閉じると、segfault が発生します。

リクエストが正常に送受信されることに注意してください。私の質問は、そのセグメンテーション違反についてのみです。

Post() リクエストが送信されない場合、コンソールを閉じてもクラッシュしません。スタックからの助けはあまりありません。

スタック

メイン.cpp

CNetworkHandleTest.cpp

CNetworkHandleTest.h

0 投票する
0 に答える
389 参照

qt - Qt アプリケーション スタック オーバーフロー例外

QNetworkReply::readAllに示すように、Foo()完了したらもう一度呼び出す必要があるように呼び出したいと思います。

Qt Gui アプリケーションが でクラッシュしたため、これが必要です0xC00000FD: Stack overflow exception。コールスタックでは、以下のコールスタックに示すように、関数の呼び出しが繰り返されました。

同期QEventLoopを呼び出すために使用しているにもかかわらず、再帰がどのように可能であるかがわかりません。readAll()

My Gui アプリケーションは、ユーザーがクリックして開始するために使用されますreadAll()

クラッシュを防ぐ方法はありますか?