問題タブ [ownership-semantics]

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 投票する
2 に答える
127 参照

c++ - フォーク後のグローバル リソースの所有権

Foo何らかのリソースを保持する を考えてみましょう

およびグローバルstd::vector<Foo>. ばかげた例かもしれませんが、問題をよく示しています。

std::vector<Foo> bar;

さて、プロセスはforks.

が子プロセスによってのみ変更される場合barは、子プロセス内で を呼び出すexitのが適切です。を呼び出すと_exitFoobar 内の :s がリークします。bar親が fork の前にいくつかのものを追加した場合、これらのオブジェクトは 2 回破棄される可能性があります。あるいは、これらは別のオブジェクトと見なす必要があるため、これは問題ではないかもしれません。

と一緒にオブジェクトの寿命を処理する適切な方法は何ですかfork? この問題に対処する唯一の正気な方法は、子供execに最初からやり直させることですか?

プログラムのこの時点では、スレッドが 1 つだけであることが保証されていることに注意してください。

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

rust - 移動後の構造体のフィールドの変更

私は次の行動に戸惑いました: 何が起こっているのか誰か説明してもらえますか?

次のコードを検討してください。

具体的には、次のことに戸惑いました。

  1. への更新は、移動が発生しp1.cxた場合でも許可されます。
  2. によって返される値はp2.x、実際には更新された 5000 ではなく、古い100.

コピー特性がないため(したがって移動)、新しい値を期待していたので、更新された値(5000)を出力する必要があるセルが1つだけあると予想していました。

しかし、私は何かが欠けているに違いありません。任意のヒント?前もって感謝します!

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

rust - Rust が所有権を推論するのではなく、所有権の注釈を必要とするのはなぜですか?

Rust が変数の所有権を完全に推論しないのはなぜですか? 注釈が必要な理由