As I had kept the pipe to comunicate with the process, although the process had ended its work, it had became a zombie process. (I had a reference to the process so It was not deleted)

To fix it I create a dictionary to store the relation: file descriptor - subprocess pipe, and when the process ends I modify the information of the dictionary to: file descriptor - output given by the process; so I drop the reference to the subprocess and it is deleted so there are no more zombie