タグ

関連タグで絞り込む (1)

タグの絞り込みを解除

あとで読むとcommandに関するNeanのブックマーク (1)

  • 【謎】本当にあったfindコマンドの怖い話【質問編】

    ※質問受付は終了しました。(3/22) 先にまとめ リネームではinode番号は変わらないけどエントリの位置が変わることがある。 これが一番知りたかった情報。でも文章では理解したけど、検証コードはどう書けばいいかわからん… readdirはアトミックじゃない。読み込み中にエントリ情報が変われば次の読み込みに影響する。 man にも「readdir()は非スレッドセーフです」って書いてある。 fts_readは実行時にreaddirの結果を10万件(ずつ?)キャッシュしていて、途中(たぶん10万件)まではエントリの変更の影響を受けないっぽい。途中からreaddirと同じことが起こる。 ソースコードの斜め読みと挙動を観察した限りそんな感じっぽい。厳密に裏取りしたいけど疲れた。 findコマンドは readdir ではなくそのラッパーの fts_read を使っているので、 fts_read と

    Nean
    Nean 2018/03/22
    あとでちゃんと読む。む。
  • 1