問題タブ [splice]
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.
c++ - C++ リスト スプライシングのヘルプ
このリストをスプライスしようとしていますが、スプライスを呼び出すと一致する関数がないというエラーが表示されます。私の知る限り、#includes はすべて正しいです。
temp を呼び出すすべての行からエラーが発生しています。
javascript - JavaScript で値によって配列から項目を削除すると、予測できない結果が生じる
JSで値によって配列からアイテムを削除するためのこのコードがあります...
これは私の配列がどのように見えるかです...
これを呼び出すとremove_item(3)、ログアウトされます...
後はすべきではあり9,6ません9,3
うまくいくときとうまくいかないときがあるので、私はこれに完全に困惑しています...
たとえば、私は試してみましたがremove_item(10)、これはうまくいきました...
私はそれがこの行と関係があると確信しています:
どんな助けでも大歓迎です。
javascript - Javascript エラー: jQuery と配列を使用した DOM 例外 8
このエラーが発生しています:
キャッチされないエラー: NOT_FOUND_ERR: DOM 例外 8
これが私のコードです(より効率的/クリーンにするために何か提案してください):
基本的に、これは「keywords」という配列に ID を追加するボタンです。
私がやりたいのは、「+ADD」が押されたときにid属性が配列に追加され、-REMが押されたときにキーワードからそのidを削除することです。
どんなアドバイスも本当に役に立ちます。$(this).attr("id") を応答 div に追加するだけで、正しく出力されます。また、「String()」関数で囲んでみました (おそらく、実際の文字列ではなく、リソースへの参照でしたか?)
ありがとうございます!
linux - vmsplice()とTCP
元のvmsplice()実装では、パイプに収まる最大ページ数の2倍のユーザーランドバッファーがある場合、バッファーの後半でvmsplice()が成功すると、カーネルがバッファの前半。
しかし、それは結局のところ真実ではありませんでした。特にTCPの場合、カーネルページは反対側からACKを受信するまで保持されていました。これを修正することは将来の作業として残されたため、TCPの場合、カーネルはパイプからページをコピーする必要があります。
vmsplice()ある種のこれに対処するオプションがありSPLICE_F_GIFTますが、問題は、カーネルから新しいページを効率的に取得する方法と、キャッシュのゴミ箱を減らす方法という、他の2つの問題を明らかにすることです。最初の問題は、mmapがカーネルにページをクリアすることを要求することであり、2番目の問題は、mmapがカーネルで派手なkscrubd機能を使用するかもしれないが、プロセスのワーキングセットを増やすことです(キャッシュトラッシング)。
これに基づいて、私はこれらの質問があります:
- ページの安全な再利用についてユーザーランドに通知するための現在の状態は何ですか?私は特にソケット(TCP)にsplice()されたページに興味があります。過去5年間に何かが起こりましたか?
- //
mmap/ TCPサーバーでのゼロコピーの現在のベストプラクティスですか、それとも今日より良いオプションがありますか?vmsplicesplicemunmap
python - Python - 正規表現 - 単語の前に文字列を分割する
特定の単語の前にPythonで文字列を分割しようとしています。たとえば、次の文字列を の前で分割したいとします"path:"。
- 前に文字列を分割
"path:" - 入力:
"path:bte00250 Alanine, aspartate and glutamate metabolism path:bte00330 Arginine and proline metabolism" - 出力:
['path:bte00250 Alanine, aspartate and glutamate metabolism', 'path:bte00330 Arginine and proline metabolism']
私が試してみました
これは文字列をどこにも分割しません。問題は、その後の値"path:"が単語全体を特定することが決してわからないことです。誰もこれを行う方法を知っていますか?
c++ - 2つのタイプリストは一定時間でスプライス可能ですか?
AlexandrescuのModernC++Designで定義されているタイプリストを少し使っています。彼の本の中で、彼はタイプリストにタイプを追加することについて話しますが、2つのタイプリストをつなぐことについては話しません...
Append関数を使用して2つのタイプリストをスプライスすることは可能だと思いますが、線形時間スプライシングにはなりません(std :: list :: spliceはO(1)です)。?
まあ、私はこの計算時間がコンパイル時であるため「無料」と見なすことができることを知っていますが、私は興味があります:)
ありがとう !
udp - Linux splice()がEINVAL( "無効な引数")を返す
splice( man 2 splice)を使用してデータをUDPソケットからファイルに直接コピーすることを試みています。残念ながら、splice()を最初に呼び出すとEINVALが返されます。
マニュアルページには次のように記載されています。
ただし、これらの条件はいずれも当てはまらないと思います。私はFedora15(カーネル2.6.40-4)を使用しているので、splice()はすべてのファイルシステムでサポートされていると思います。ターゲットファイルは、スプライスの最初の呼び出しでは無関係である必要がありますが、完全を期すために、を介して開いていopen(path, O_CREAT | O_WRONLY | O_TRUNC, S_IRUSR | S_IWUSR)ます。どちらの呼び出しもパイプを使用し、どちらの呼び出しもNULL以外のオフセットを使用します。
これが私のサンプルコードです:
sock_fdは、次の擬似コードによって初期化されます。
おそらく関連しているのは、このコードスニペットがlibeventループ内で実行されていることです。libeventはepoll()を使用して、UDPソケットがホットかどうかを判別しています。
javascript - 配列の複製javascriptスプライシング
コードに奇妙なバグがあり、なぜそれが発生するのか理解できません。
配列array1があります。array2をarray1と等しくすることで、array1を複製します。次に、スプライスを使用してarray2を変更し、数値を追加します。Array1に触れてはいけませんか?しかし、どちらも同じ変化を出力します。
配列の割り当てを混乱させていると思いますか?これを起こさずにアレイを複製する適切な方法は何ですか?
乾杯
linux-kernel - splice()のDMAコピー
Linuxカーネルは初めてです。そして最近、カーネル2.6.33でsendfileシステムコールを実行しました。以下は私の旅のシーケンスです:
このシーケンス全体を通して、スプライスがDMAコピーを使用する場所は見つかりませんでした。では、DMAコピーはどこで行われているのでしょうか。