Process یک برنامه اجرا شده است که ممکن است چند بخش باشد که هرکدام یک Thread محسوب می شوند در حالی که Thread یک بخش از Process است که وزن کمتری دارد.(همه threadهای درون یک برنامه منطقا درون یک process قراردارند.)
تفاوت کلیدی این دو این است که process ها کاملا ازیکدیگرجدا هستند .نخها یا thread حافظه را با دیگرنخهایی که درهمان برنامه درحال اجرا بودند به اشتراک میگذارندو process هافضای مشترک آدرس دهی ندارند ولی thread داخل یک فرایند فضای مشترک آدرس دهی دارند