Je teste une de mes applications sur l'émulateur de terminal termux d'Android (Android version 7.0). Je veux créer des processus zombies.
Sous GNU/Linux, si j'ouvre un émulateur de terminal et que j'écris :
ruby -e '10.times { fork { exit! } } && sleep '
Cela créera 10 processus zombies. Pour vérifier les processus zombies, j'écris :
ruby -e "puts Dir['/proc/**'].select { |x| File.split(x)[1].then { |y| y.to_i.to_s == y } }.then { |a| %<Active Processes: #{a.size} (#{a.count { |x| IO.readlines(%<#{x}/status>)[1].split[1] == ?Z.freeze} } Zombies)> }"
Ce qui donne des résultats dans le format :
Active Processes: 189 (10 Zombies)
Mais sur Termux, je ne peux pas créer de processus zombies. Lorsque je forge un processus, le nombre de processus n'augmente pas (comme l'indiquent htop et le programme ruby). Même si j'essaie de créer des processus, il n'y en a pas. J'ai un total de 11 processus affichés sur Termux !
En quoi Android est-il si différent ? Existe-t-il un moyen de tester mon application avec termux ? Ou existe-t-il d'autres applications qui me permettent de faire ce genre de choses ?