Incidencia #35958

古すぎるジョブを消す

Abrir Fecha: 2016-01-23 00:02 Última actualización: 2023-09-16 00:39

Informador:
Propietario:
Estado:
Open [Owner assigned]
Componente:
Hito:
(Ninguno)
Prioridad:
3
Gravedad:
3
Resolución:
Postponed
Fichero:
Ninguno
Vote
Score: 0
No votes
0.0% (0/0)
0.0% (0/0)

Details

非同期リストを起動するばかりで wait しない場合、シェル内部のジョブリストにジョブがどんどん溜まってゆき、最終的にメモリを使い果たす可能性がある。ジョブが多過ぎるときに古いジョブを消すべきか。 なお POSIX では CHILD_MAX 個を超えるジョブは覚えなくてよいとしている。

Ticket History (3/5 Histories)

2016-01-23 00:02 Updated by: magicant
  • New Ticket "古すぎるジョブを消す" created
2019-01-19 22:35 Updated by: magicant
  • Details Updated
Comentario

do_wait の中と get_jobnumber_from_pid の中とでループの回る向きが違うのも気になるがそもそも pid が使い回されるケースに対応していないから使い回されるとろくに動かない。先にそちらの方が問題になる。

2019-01-23 23:12 Updated by: magicant
Comentario

使い回しの問題は r3973 で直した。

2019-01-27 00:38 Updated by: magicant
Comentario

そもそも古いジョブを消さずにずっと覚えてるシェルが多数派っぽい?

2023-09-16 00:39 Updated by: magicant
  • Resolución Update from Ninguno to Postponed
Comentario

Yash-rs では pid が使い回されたときに古いジョブを消している。その場合、(OS が使用する pid 空間が有限なので) ジョブリストが無限に膨らむことはない。

Attachment File List

No attachments

Editar

You are not logged in. I you are not logged in, your comment will be treated as an anonymous post. » Entrar