גם אם תשחרר, סביר שמערכת ההפעלה לא תשחרר אותו, אבל התהליך שלך יוכל לעשות בו שימוש חוזר.
כאשר התהליך יסתיים, מערכת ההפעלה תוכל להקצות לתהליכים אחרים את הזיכרון שהוא השתמש בו. (לזה אתה כנראה מתכוון במונח "ישתחרר")
מדוע שמערכת ההפעלה לא תריץ מנגנון איסוף זבל gc כמו דוט נט ותשחרר את הזיכרון שלא בשימוש?
 
אגב,כל תהליך יכול להקצות כמה זיכרון שהוא רוצה או שיש מגבלה?
כמו שציינת, יש שפות אחרות שיש להן garbage collector ומנגנונים שהשפה והסביבה מזהים בעזרתם שזיכרון איננו בשימוש עוד.
 
ב-C ו-++C, נכון לעכשיו, אין garbage collector אז לא עושים עבורך את העבודה לחלוטין אוטומאטית, אבל מה שכן יש ב-++C זה shared_ptr שזה בדיוק מנגנון שמזהה מתי זיכרון איננו בשימוש יותר ומשחרר לך אותו.
  https://en.cppreference.com/w/cpp/memory/shared_ptr