Ruby 初心者スレッド Part 67 (748レス)
前次1-
抽出解除 レス栞

リロード規制です。10分ほどで解除するので、他のブラウザへ避難してください。
310
(1): (ワッチョイ bfb7-I/Yj) 2021/09/21(火)18:45 ID:0Go6zndF0(1/2) AAS
テキストファイルの処理で、段落ごとに時間のかかる作業(数時間単位)を回してるのだけど
その対象のテキストファイル(data.txt)は処理中に追加で内容を追記していくようになっている

def func()
# (ここにすごく時間のかかる処理)
end

f=File.open("data.txt", 'r:UTF-8'){|f|
f.each_line(rs=""){|l|
func()
}
}
省12
319: (ワッチョイ 162c-pveB) 2021/09/26(日)22:14 ID:5RNiLxHe0(1) AAS
>>310
基本的に、読み込み用ファイルに書き込まないようにすべき。
io.seek で使う、ファイルポインターがずれる

例えば、配列でも同じ。
読み込み用配列を読み込みながら、
読み込み要素の前後に、要素を追加・削除すると、要素がずれるのでバグる

基本、同一ファイルじゃなく、入力用・出力用の2つが必要。
それか、データベースでやるとか

シェルスクリプトとか、関数型のElixir のパイプラインみたいに、
元のファイルを更新せずに、次々と出力ファイルを新規作成していくべき
省9
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.029s