[過去ログ] Rust part16 (1002レス)
1-

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
260
(1): 2022/07/08(金)16:24 ID:atE4xqm8(1) AAS
短時間で終了するプログラムはfree呼ばずにexitした方が高速な場合がある
copy gcも条件付きだが高速な場合がある
常にRAIIによるメモリ解放が他の手段より高速というのは誤り

100%正しいという風に断言するから枝葉の議論になるし最初から論理的に厳密な文章書いた方が良いよ
261
(1): 2022/07/08(金)16:35 ID:VZayErSn(2/2) AAS
>>260
これは特殊な使い方限定の話を持ち出したら意味がない話
既に書いたようにCopying GCは汎用的には使いものにならない
一般的にはRAIIによる解放が最も高速かつ利便性が高い
そのためC++でもRustでもその方法がとられている
262: 2022/07/08(金)17:23 ID:cRmlWf2z(1) AAS
copying GCはJavaで使われているのだが

解放しない、以外でスタックの解放(malloc的なものに対する)freeより速いものはあるの?
263: 2022/07/08(金)18:32 ID:r9xh0XFc(1/6) AAS
>>246
C++にもweak_ptr<>あるけど。
264
(1): 2022/07/08(金)18:32 ID:IcalP2aj(1) AAS
RAIIがGCより高速なら
RAIIの一例であるshared_ptrはGCの一例であるARCより高速ということになるが
どういう原理で高速になるの?
265: 2022/07/08(金)18:42 ID:r9xh0XFc(2/6) AAS
でも、Firefox良く落ちるじゃん。
266: 2022/07/08(金)18:45 ID:r9xh0XFc(3/6) AAS
でも、JavaはC++も20倍速いってサイト無くなったじゃん。
267: 2022/07/08(金)18:50 ID:r9xh0XFc(4/6) AAS
>>261
だって、RustはC++0xのパクリじゃん。
268
(1): 2022/07/08(金)18:52 ID:hlO59OkW(1/2) AAS
>>264
shared_ptrではRAIIによって解放しない
RAIIによってデクリメントするだけ

SwiftなどでのARCが遅い理由は参照型の全てにおいてshared_ptrを使用しているような状況であるためコストが高い
269
(1): 2022/07/08(金)18:54 ID:r9xh0XFc(5/6) AAS
じゃあ、unique_ptr<>でいいじゃん。
270: 2022/07/08(金)19:10 ID:hlO59OkW(2/2) AAS
>>269
unique_ptrとshared_ptrの役割の違い、動作の違いを理解できていない君が
間違えて用いてもC++ではコンパイルが通ってしまったりして実行時に問題を引き起こす
Rustは間違えて用いるとコンパイルエラーとなり通らないから安全側に救われる
271: 2022/07/08(金)20:02 ID:A8oltmgp(1) AAS
>>268
参照型の全てにshared_ptrを利用したら何で遅くなるの?
272
(1): 2022/07/08(金)21:48 ID:i9Nd4OSx(3/3) AAS
>>257
即座に開放というのがOSに返却とか認識してたらアウトだぞ。
アロケーターなに使うかで実際の挙動は変わってくるからな。
普通しないがクソアロケーター使ったら、OSからみたらリーク同然になったりするし。
273
(1): 2022/07/08(金)21:53 ID:G/CdBPp1(1) AAS
所有者がいないとメモリ解放って間違ってるよね?

所有者がいてもブロックから出たら解放されるからコンパイルエラーが出てコンパイルされない
274
(2): 2022/07/08(金)22:05 ID:h7kEq7Ot(1/2) AAS
OSSでうっかり強循環参照作ってしまってた例が過去スレにあったようなと掘り返してみたところ、Part11にて発見

外部リンク:github.com
外部リンク:github.com
275: 2022/07/08(金)22:23 ID:RqLk9Xjf(1) AAS
>>272
そんなバカな認識するのはオマエだけだろw
276
(1): 2022/07/08(金)22:38 ID:J0vSCVey(1) AAS
>>273
所有者がいなくなるとメモリ解放であってるよ
スコープを抜けると所有者がいなくなりデストラクタが呼ばれて管理していたヒープ領域があれば解放される
277: 2022/07/08(金)22:51 ID:j0PLF9Z7(1) AAS
所有権とは?の話に戻っちゃうな
複製おじさんネタで散々繰り返したやつ
278: 2022/07/08(金)23:06 ID:QSUHt/6/(1) AAS
お前ら何回同じ話ループさせたら気が済むの?
279
(1): 2022/07/08(金)23:08 ID:h7kEq7Ot(2/2) AAS
なんか合ってるのか分からんけど最近思うこと

Rustの言語仕様内に明確に含まれているのはlifetimeだけで
所有権とか所有者ってのは実はただのメタファーでしかない?
280: 2022/07/08(金)23:12 ID:r9xh0XFc(6/6) AAS
C++はコンテナのアロケータと積み荷のアロケータが別とかできるくらい柔軟ですよ。
281: 2022/07/09(土)00:08 ID:Xo3+Ls6P(1) AAS
コンセプトをコンパイラにハードコーディングして変えられないようにしたのがRustってこと?
282
(1): 2022/07/09(土)03:43 ID:dAPednzC(1) AAS
>>256
こいつのような気持ち悪い反吐が出る輩がいるからRustがいまいちメジャーにならない。公式ドキュメント書き換えてこいゴミ
上の文章読んでどの辺が「アンチ」だ?ゴミのくせにイキって恥かいてんじゃねーわw

The Rust Programming Language 日本語版
循環参照は、メモリをリークすることもある
循環参照を回避する: Rc<T>をWeak<T>に変換する
外部リンク[html]:doc.rust-jp.rs
283
(1): 2022/07/09(土)06:36 ID:x6eGZQ2/(1) AAS
>>276
間違ってることを合ってると強弁するのいい加減辞めなよ
284
(1): 2022/07/09(土)07:31 ID:O4my42l1(1) AAS
認める事を全くせず、大したコードも書いてないのにRustやってる事だけが自尊心だから勝手にアンチだの決めつけて
いつも人を見下して偉そう。プロジェクトチームの雰囲気はそいつがいるだけで常に最悪、チームの重荷・会社の害悪。
口癖は「意味不明」
285: 2022/07/09(土)10:34 ID:OnqDT6DB(1) AAS
>>282
実際にコードを自分で書いて理解したほうがいいよ。
その公式Bookに書かれている内容はもちろん正しいし、
その相手>>256の書き込み内容も正しくて、
両者に矛盾はないよ。
286: 2022/07/09(土)11:42 ID:lwwTn4Ql(1/3) AAS
理解してないと書いてる人間が理解してないことは多いですよね
287
(1): 2022/07/09(土)11:50 ID:lwwTn4Ql(2/3) AAS
どちらにしてもRust使っても気楽にコーディングできるわけでもなく
メモリ構造考えなければいけないんですね
288: 2022/07/09(土)13:10 ID:g+WH1rkE(1/9) AAS
結局、C++0xのパクリじゃないですか。
C++はそこからさらに10年以上進んでるのに。
289: 2022/07/09(土)13:14 ID:lwwTn4Ql(3/3) AAS
それはないかな…
どっちも一長一短で視点がぼやけます
1-
あと 713 レスあります
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.026s