a maneira como setrlimit (RLIMIT_STACK) é aplicado é específica da plataforma e diverge amplamente.
Se o que você quer é garantir que o limite seja aumentado para o seu processo, a melhor maneira é configurá-lo no shell antes que o processo seja iniciado (como você apontou na sua pergunta), desde então ele terá aplicado independentemente de seu processo ser ou não encadeado ou quais são as especificidades da implementação que sua plataforma segue.