mastodon.cardina1.red は、数々の独立したMastodonサーバーのうちのひとつです。サーバーに登録してFediverseのコミュニティに加わってみませんか。

サーバーの情報

3
人のアクティブユーザー

UnsafeCell が ?Sized 付けてるからといって Mutex がそれを継承する必要があるわけでもないので、やっぱり多分なにか理由はあるんだよね……

らりお・ザ・何らかの🈗然㊌ソムリエ

impl<T: ?Sized + Default> Default for Mutex<T>

とかシレっと書いてあるけどさ、 Default は Self を返すから ?Sized な型は実際ありえないでしょ……

impl<T> From<T> for Mutex<T> でちゃんと T: Sized になってるあたりそれは意識してるっぽいし、「将来的に unsized な値を扱えるようになったとき (???) Mutex 関連の制約を変化させずに済むように」みたいなお気持ちはあるのかもしれないけど……

意識してるっぽいというか、単に ?Sized では実装書けないというだけの話だけど

そういえば実用上のケースでは Mutex は Arc や参照で用いられるので、 Arc<Mutex<T>> や &Mutex<T> (なお T は unsized) な場合に特別な最適化をかけるみたいなことがありえるのか。ありえそう。