Can any of the SV constructs take the process to suspended state?

Can any of the SV constructs take the process to suspended state?
#dealy, mailbox.put making the process to go to WAITING state, just wondering when can a process go to suspended state?
Can this be achieved only by calling the process.suspend? Or any other constructs can suspend the process?

In reply to yourcheers:

Calling my_process.suspend() is the only construct to get a process in the SUSPENDED state. I’m not sure if there is even an external way using the VPI.

In reply to dave_59:

Thanks Dave, that helps.

Can you explain with one example ? for better understanding the concept.

Thank you

In reply to VK_18:

https://verificationacademy.com/forums/systemverilog/process-class-usage-suspend-and-resume-functions#reply-61268