Future ForgeFuture ForgeFuture ForgeFuture Forge
ServicesWorkPackagesFree toolsNotesAboutContact
Start
  1. Home
  2. /Notes
Future ForgeFuture Forge

Product engineering studio — design, build, and deploy software.

Discuss your project

Contact

hello@futureforge.ir09128464105
Future ForgeFuture Forge

Product engineering studio — design, build, and deploy software.

Services

Product engineeringFull-stack engineeringEngineering auditArchitecture consultingInfrastructure and deploymentAI in the product

Explore

WorkNotesFAQPackages

Free tools

Engineering auditArchitecture advisorProject estimatorPrompt tool

Company

AboutContactPrivacyTerms of use

Discuss your project

Describe the problem and the constraints. If there is a fit, we will schedule a conversation.

Discuss your project

Contact

hello@futureforge.ir09128464105
GitHubLinkedIn

© 2026 FutureForge. All rights reserved.

HomeServicesFree toolsStart
Operations

بستن اپلیکیشن هنگ‌کرده در ویندوز بدون ری‌استارت

ترتیب ایمن برای بستن اپ Not Responding: Task Manager، taskkill، Stop-Process، تفکیک سرویس و زمان ری‌استارت واقعی.

SE
Soheil Ebrahimpour

Founder & product engineer

·Sep 20, 2026·11 min read
بستن برنامه هنگ کرده ویندوزtaskkillStop-ProcessNot RespondingEnd taskhung process Windows
پنجره Not Responding با استیکی End task و Stop-Process

پنجرهٔ Not Responding، IDE سفید، یا node که پورت را رها نمی‌کند، بسیاری را مستقیم به دکمهٔ Reset می‌فرستد. ری‌استارت کار می‌کند چون همه چیز را می‌کشد — ولی ذخیرهٔ‌نشده، VMها، و اتصال‌ها را هم با خود می‌برد. در بیشتر موارد می‌توان فقط درخت همان فرایند را بست و به کار برگشت.

این مقاله ترتیب ایمن از End task تا taskkill /T، تفاوت اپ کاربر با سرویس، و نشانه‌هایی که واقعاً به ری‌استارت نیاز دارند را می‌گوید.

Task Manager و taskkill و Stop-Process -Force

پاسخ کوتاه

اول سعی کنید پنجره را با UI ببندید؛ اگر Not Responding ماند، Task Manager → End task. اگر نرفت، در Details با PID از Stop-Process -Force یا taskkill /PID /T استفاده کنید. برای سرویس‌ها Stop-Service را ترجیح دهید. وقتی کل شِل گرافیکی مرده یا دیسک ۱۰۰٪ گیر کرده، آن‌وقت ری‌استارت منطقی است.

اول PID درست را بکش؛ نه کل روز کاری را.

چرا اپ Hang می‌کند؟

  • انتظار روی I/O (شبکه، فایل قفل، آنتی‌ویروس).
  • بن‌بست نخ‌ها در خود اپ.
  • مصرف شدید حافظه و thrashing.
  • دیالوگ پنهان پشت پنجره‌ها که منتظر کلیک است.
  • فرزند zombie که والد را نگه داشته.

دانستن علت دقیق همیشه ممکن نیست؛ هدف عملی بازیابی کنترل است و بعد، اگر تکرار شد، لاگ و پروفایل.

سطح ۱: بستن مؤدبانه

  1. Alt+F4 روی پنجرهٔ هدف.
  2. اگر دیالوگ ذخیره آمد، تصمیم بگیرید.
  3. برای اپ‌های چندپنجره‌ای، همهٔ پنجره‌ها را امتحان کنید.

گاهی Hang واقعی نیست و پنجره زیر بقیه است. Win+Tab یا Alt+Tab را قبل از کشتن امتحان کنید.

سطح ۲: Task Manager

  1. Ctrl+Shift+Esc.
  2. Processes → اپ را پیدا کنید → End task.
  3. اگر چند فرایند هم‌نام است (مثلاً چند chrome)، همانی را ببندید که CPU/Memory غیرعادی دارد یا از End task درخت استفاده کنید.
  4. Go to details برای دیدن PID دقیق.

سطح ۳: PowerShell و taskkill

powershell

Get-Process | Where-Object Responding -EQ $false Get-Process code -ErrorAction SilentlyContinue | Select-Object Id, ProcessName, Responding, CPU Stop-Process -Id <PID> -Force

powershell

taskkill /PID <PID> /T taskkill /IM node.exe /T taskkill /IM MyApp.exe /F /T

طبق Microsoft Learn، taskkill فرایند را خاتمه می‌دهد؛ /T درخت فرزندان را هم می‌گیرد که برای dev serverهای چندفرایندی مهم است. /F اجبار می‌کند وقتی خاتمهٔ عادی جواب نمی‌دهد. نام IM باید دقیق باشد تا فرایند اشتباه نرود.

Stop-Process در PowerShell معادل عملی برای اسکریپت‌هاست. قبل از -Force روی ابزار ناشناس، Confirm و نام را دوباره بخوانید.

سطح ۴: وقتی End task هم گیر می‌کند

  • صبر کوتاه اگر Disk در Performance صددرصد است؛ ممکن است بعد از اتمام I/O آزاد شود.
  • Resource Monitor → CPU → Associated Handles برای فایل قفل؛ فرایند قفل‌کننده را شناسایی کنید.
  • اگر Explorer هنگ کرده: Task Manager → Windows Explorer → Restart (نه End لزوماً).
  • برای درایور/کرنل‌لاک واقعی، ممکن است فقط ری‌استارت بماند.

سرویس در برابر اپ کاربر

اگر آنچه قفل شده یک Windows Service است، کشتن خام PID می‌تواند وضعیت StopPending و وابستگی‌ها را بدتر کند. اول:

powershell

Get-Service | Where-Object Status -EQ 'StopPending' Stop-Service -Name <Name> -Force

پورت رها نشده بعد از Hang

گاهی پنجره بسته شده ولی فرزند روی پورت مانده. بعد از taskkill /T:

powershell

Get-NetTCPConnection -LocalPort 3000 -ErrorAction SilentlyContinue | Select-Object OwningProcess, State

IDE و مرورگر: نکات ویژه

  • VS Code/Visual Studio ممکن است چند فرایند helper داشته باشند؛ /T یا End task از ریشهٔ درست.
  • مرورگر با پروفایل‌های جدا: فقط فرایند همان پنجره را هدف بگیرید تا جلسهٔ کاری دیگر نپرد.
  • ذخیرهٔ اضطراری: بعضی IDEها فایل بازیابی دارند؛ بعد از کشتن اول سراغ Restore بروید نه Panic.

چه وقت واقعاً ری‌استارت لازم است؟

نشانهاقدام
فقط یک اپ Not RespondingEnd task / taskkill
Explorer قفل، بقیه زنده‌اندRestart Explorer
ماوس/کیبورد سیستم‌عامل جواب نمی‌دهدسخت‌افزاری یا ری‌استارت
دیسک ۱۰۰٪ ماندگار + صف طولانی بدون پیشرفتپس از چند دقیقه بررسی، ری‌استارت ممکن است
صفحه آبی یا قطع نمایش کاملری‌استارت / بررسی Event بعداً

ثبت برای تکرار بعدی

اگر Hang تکرار می‌شود، قبل از کشتن سریع: زمان، نام فرایند، و یک اسکرین از Task Manager بردارید. بعد در Event Viewer به‌دنبال Application Hang/Error هم‌زمان بگردید. بدون ثبت، همیشه در حلقهٔ «کشتم و رفتم» می‌مانید.

اشتباه‌های رایج

  • taskkill /IM با نامی که چند ابزار حیاتی را می‌گیرد.
  • کشتن winlogon/csrss و مشابه از روی کنجکاوی.
  • ریبوت به‌عنوان اولین Reflex برای هر Not Responding.
  • نادیده گرفتن درخت فرزند و تعجب از پورت اشغال.
  • Force روی دیتابیس بدون فکر به corruption احتمالی تراکنش باز.

در کار روزمره روی ویندوز موضوع force kill risk / follow-up را با Stop-Service first, Microsoft Learn بررسی کنید، نتیجه را یادداشت کنید و بدون پایه سیستم را عوض نکنید. موضوع force kill risk / follow-up را با Stop-Service first, Microsoft Learn بررسی کنید، نتیجه را یادداشت کنید و بدون پایه سیستم را عوض نکنید. موضوع force kill risk / follow-up را با Stop-Service first, Microsoft Learn بررسی کنید، نتیجه را یادداشت کنید و بدون پایه سیستم را عوض نکنید. موضوع force kill risk / follow-up را با Stop-Service first, Microsoft Learn بررسی کنید، نتیجه را یادداشت کنید و بدون پایه سیستم را عوض نکنید. موضوع force kill risk / follow-up را با Stop-Service first, Microsoft Learn بررسی کنید، نتیجه را یادداشت کنید و بدون پایه سیستم را عوض نکنید. اگر مشکل تکرار شد، زمان، PID و Event ID را ثبت کنید تا دفعه قابل استناد باشد. اگر مشکل تکرار شد، زمان، PID و Event ID را ثبت کنید تا دفعه قابل استناد باشد.

در کار روزمره روی ویندوز موضوع force kill risk را با Stop-Service first بررسی کنید، نتیجه را یادداشت کنید و بدون پایه سیستم را عوض نکنید. موضوع force kill risk را با Stop-Service first بررسی کنید، نتیجه را یادداشت کنید و بدون پایه سیستم را عوض نکنید. موضوع force kill risk را با Stop-Service first بررسی کنید، نتیجه را یادداشت کنید و بدون پایه سیستم را عوض نکنید. موضوع force kill risk را با Stop-Service first بررسی کنید، نتیجه را یادداشت کنید و بدون پایه سیستم را عوض نکنید. موضوع force kill risk را با Stop-Service first بررسی کنید، نتیجه را یادداشت کنید و بدون پایه سیستم را عوض نکنید. موضوع force kill risk را با Stop-Service first بررسی کنید، نتیجه را یادداشت کنید و بدون پایه سیستم را عوض نکنید. اگر مشکل تکرار شد، زمان، PID و Event ID را ثبت کنید تا دفعه قابل استناد باشد. اگر مشکل تکرار شد، زمان، PID و Event ID را ثبت کنید تا دفعه قابل استناد باشد.

ریسک دیتابیس

در کار روزمره روی ویندوز موضوع remote hang / follow-up را با Hyper-V console, Stop-Process, Microsoft Learn بررسی کنید، نتیجه را یادداشت کنید و بدون پایه سیستم را عوض نکنید. موضوع remote hang / follow-up را با Hyper-V console, Stop-Process, Microsoft Learn بررسی کنید، نتیجه را یادداشت کنید و بدون پایه سیستم را عوض نکنید. موضوع remote hang / follow-up را با Hyper-V console, Stop-Process, Microsoft Learn بررسی کنید، نتیجه را یادداشت کنید و بدون پایه سیستم را عوض نکنید. موضوع remote hang / follow-up را با Hyper-V console, Stop-Process, Microsoft Learn بررسی کنید، نتیجه را یادداشت کنید و بدون پایه سیستم را عوض نکنید. موضوع remote hang / follow-up را با Hyper-V console, Stop-Process, Microsoft Learn بررسی کنید، نتیجه را یادداشت کنید و بدون پایه سیستم را عوض نکنید. اگر مشکل تکرار شد، زمان، PID و Event ID را ثبت کنید تا دفعه قابل استناد باشد. اگر مشکل تکرار شد، زمان، PID و Event ID را ثبت کنید تا دفعه قابل استناد باشد.

در کار روزمره روی ویندوز موضوع remote hang را با Hyper-V console, Stop-Process بررسی کنید، نتیجه را یادداشت کنید و بدون پایه سیستم را عوض نکنید. موضوع remote hang را با Hyper-V console, Stop-Process بررسی کنید، نتیجه را یادداشت کنید و بدون پایه سیستم را عوض نکنید. موضوع remote hang را با Hyper-V console, Stop-Process بررسی کنید، نتیجه را یادداشت کنید و بدون پایه سیستم را عوض نکنید. موضوع remote hang را با Hyper-V console, Stop-Process بررسی کنید، نتیجه را یادداشت کنید و بدون پایه سیستم را عوض نکنید. موضوع remote hang را با Hyper-V console, Stop-Process بررسی کنید، نتیجه را یادداشت کنید و بدون پایه سیستم را عوض نکنید. موضوع remote hang را با Hyper-V console, Stop-Process بررسی کنید، نتیجه را یادداشت کنید و بدون پایه سیستم را عوض نکنید. اگر مشکل تکرار شد، زمان، PID و Event ID را ثبت کنید تا دفعه قابل استناد باشد. اگر مشکل تکرار شد، زمان، PID و Event ID را ثبت کنید تا دفعه قابل استناد باشد.

RDP و break-glass

در کار روزمره روی ویندوز موضوع process tree / follow-up را با Win32_Process, taskkill /T, Microsoft Learn بررسی کنید، نتیجه را یادداشت کنید و بدون پایه سیستم را عوض نکنید. موضوع process tree / follow-up را با Win32_Process, taskkill /T, Microsoft Learn بررسی کنید، نتیجه را یادداشت کنید و بدون پایه سیستم را عوض نکنید. موضوع process tree / follow-up را با Win32_Process, taskkill /T, Microsoft Learn بررسی کنید، نتیجه را یادداشت کنید و بدون پایه سیستم را عوض نکنید. موضوع process tree / follow-up را با Win32_Process, taskkill /T, Microsoft Learn بررسی کنید، نتیجه را یادداشت کنید و بدون پایه سیستم را عوض نکنید. موضوع process tree / follow-up را با Win32_Process, taskkill /T, Microsoft Learn بررسی کنید، نتیجه را یادداشت کنید و بدون پایه سیستم را عوض نکنید. اگر مشکل تکرار شد، زمان، PID و Event ID را ثبت کنید تا دفعه قابل استناد باشد. اگر مشکل تکرار شد، زمان، PID و Event ID را ثبت کنید تا دفعه قابل استناد باشد.

در کار روزمره روی ویندوز موضوع process tree را با Win32_Process, taskkill /T بررسی کنید، نتیجه را یادداشت کنید و بدون پایه سیستم را عوض نکنید. موضوع process tree را با Win32_Process, taskkill /T بررسی کنید، نتیجه را یادداشت کنید و بدون پایه سیستم را عوض نکنید. موضوع process tree را با Win32_Process, taskkill /T بررسی کنید، نتیجه را یادداشت کنید و بدون پایه سیستم را عوض نکنید. موضوع process tree را با Win32_Process, taskkill /T بررسی کنید، نتیجه را یادداشت کنید و بدون پایه سیستم را عوض نکنید. موضوع process tree را با Win32_Process, taskkill /T بررسی کنید، نتیجه را یادداشت کنید و بدون پایه سیستم را عوض نکنید. موضوع process tree را با Win32_Process, taskkill /T بررسی کنید، نتیجه را یادداشت کنید و بدون پایه سیستم را عوض نکنید. اگر مشکل تکرار شد، زمان، PID و Event ID را ثبت کنید تا دفعه قابل استناد باشد. اگر مشکل تکرار شد، زمان، PID و Event ID را ثبت کنید تا دفعه قابل استناد باشد.

درخت فرایند

خلاصه

برای اپ هنگ‌کرده از مؤدبانه به Task Manager و سپس taskkill/Stop-Process با PID و /T بروید، سرویس را از اپ جدا کنید، پورت را بعد از قتل بررسی کنید، و ری‌استارت را برای شکست لایهٔ سیستم نگه دارید. عادت ثبت علت، تکرار را کم می‌کند.

سوالات متداول

تفاوت End task و End process tree چیست؟

درخت، فرزندان را هم می‌بندد؛ برای اپ‌های چندفرایندی معمولاً مؤثرتر است.

Responding در Get-Process چیست؟

نشان می‌دهد آیا پنجره به پیام‌های UI پاسخ می‌دهد؛ False بودن نشانهٔ Hang رابط است، نه همیشه بن‌بست کامل.

آیا taskkill خطرناک است؟

مثل هر خاتمهٔ اجباری می‌تواند دادهٔ ذخیره‌نشده را از بین ببرد. روی فرایند درست و پس از تلاش مؤدبانه استفاده کنید.

اگر Remote Desktop قفل شد؟

از ماشین دیگر یا کنسول ابری/hypervisor جلسه را مدیریت کنید؛ taskkill ریموت با مجوز مناسب هم گزینه است.

منابع و مراجع

  • taskkill — Microsoft Learn: https://learn.microsoft.com/en-us/windows-server/administration/windows-commands/taskkill
  • Stop-Process — Microsoft Learn: https://learn.microsoft.com/en-us/powershell/module/microsoft.powershell.management/stop-process
  • Get-Process — Microsoft Learn: https://learn.microsoft.com/en-us/powershell/module/microsoft.powershell.management/get-process

Author

SE

Soheil Ebrahimpour is the founder of FutureForge. He works on product design, architecture, and getting custom software into production.

Related notes

Related notes

Categories

Related services

From note to project

If this topic is close to your product or system, we can talk about the real scope.

If you are unsure about architecture or the build path, we can talk about the project.

Describe the problem and the constraints. If there is a fit, we will schedule a conversation.

Soheil Ebrahimpour
Notes
Logging چیست؟ ثبت رویداد برای تشخیص و پاسخ به حادثه
تعیین اندازهٔ سرور: RAM، CPU و Storage بر اساس Workload
Docker در برابر Kubernetes؛ مقایسهٔ دقیق نه شعار
چرا همیشه به Kubernetes نیاز ندارید؟
Kubernetes چیست؟ اجرای مقاوم workloadهای کانتینری

Operations

Logging چیست؟ ثبت رویداد برای تشخیص و پاسخ به حادثه

Sep 20, 2026

Operations

تعیین اندازهٔ سرور: RAM، CPU و Storage بر اساس Workload

Sep 20, 2026

Operations

Docker در برابر Kubernetes؛ مقایسهٔ دقیق نه شعار

Sep 20, 2026

Operations

چرا همیشه به Kubernetes نیاز ندارید؟

Sep 20, 2026

Operations

Kubernetes چیست؟ اجرای مقاوم workloadهای کانتینری

Sep 20, 2026
All notes219
Software architecture13
Glossary37
Operations87
Product engineering74
Web guide8
Product engineering
Full-stack engineering
Engineering audit
Architecture consulting
Infrastructure and deployment
Discuss your project
Free tools
Discuss your project