ajax通信中に他のajaxが保留になる

最近、jQuery で複数同時通信する処理を書いたが困った事になっている。

【条件】
1. $.ajax() で1分間位返ってこない処理。
2. 1秒毎にインターバルで呼び出す$.ajax() で、処理はされるがHTTP通信が全部保留(pending)。

という状態なのだが、firefox 75.0でもchrome 73.0.3683.75でも1つしか通信中状態を認めない。

1 の処理が終了すると、保留されていたHTTP通信が一挙に実行されて結果が返ってくるが、もはや1の処理が終了しているので、「完了」という結果が山程返ってくるだけ。

これって非同期でも全く意味無いじゃん。何でこんなバカな仕様になってるんだろう?

確かにJavascript で組んでて、非同期で結果が返らない内に他の処理が走ってしまうというマヌケな相談が山程あるけど、それらはプログラムの組み方で解決できる話であって、それを救済する為に非同期処理のメリットを完全に潰す事は馬鹿げている。

それか、HTTP/2.0 だと、一つの接続で複数のページをまとめて送信する仕様だが、そっちへ移行させる為の嫌がらせ?

1つの処理をやってて、それがサーバーに動作状況をファイルに書き出し、もう一つが、書き出したファイルを読み出して状態を返すって処理組めねーじゃん。

ウェブブラウザ開発してる連中ってバカ揃いかよ!?

しょうがないので、1 のPHP処理で exec()使ってすぐに戻ってこさせて、バックグラウンドで実行させるしか手が無いな。クソが。

コメントを残す

メールアドレスが公開されることはありません。 が付いている欄は必須項目です

CAPTCHA


このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください