Вывести процесс на передний план

У меня есть процесс (который читает и пишет в тип терминала), который был выполнен фоновым процессом. Я могу видеть это, используя пс. Пытаясь вывести это на передний план, вот что я попытался:

int main()

{

    FILE* fd = popen("pidof my_program","r");

    // ...
    // Some code to get the pid of my_program as mpid
    //...

    printf("pid of my_program is %d",mpid);
    signal(SIGTTOU, SIG_IGN);
    setpgid(mpid,0); // Set program group id to pid of process
    tcsetpgrp(0,mpid); // Give it terminal stdin access
    tcsetpgrp(1,mpid); // Give it terminal stdout access
    return 0;
}

Это не работает, хотя. Может ли кто-нибудь помочь мне в этом? Благодарю.

Ответы на вопрос(2)

Ваш ответ на вопрос