don't use communicate for already finished processes to read stdout, err.