Fix ERROR_IO_PENDING 0x3E5: Overlapped I/O Still Running
Windows error 0x3E5 means a disk or network operation isn't finished yet. Usually harmless, but if it freezes your app, here's how to clear it fast.
What Error 0X000003E5 Actually Means
You're looking at ERROR_IO_PENDING (0X000003E5). This isn't a crash — it's Windows telling you: "I started that read or write, but I haven't finished yet." It's expected behavior for overlapped I/O. Programs use overlapped I/O to keep working while data flows in the background. But sometimes, that background operation gets stuck or the program doesn't handle the pending state correctly.
I've seen this most often when copying files to a slow USB drive, sending data over a network share, or running a backup utility that uses async writes. If the program freezes or the copy seems to hang, you need to force the I/O to complete or cancel it.
Fix 1: Wait It Out (30 seconds)
This works more often than you'd think. Overlapped I/O operations can take longer than expected — especially with:
- External hard drives (especially USB 2.0 or older drives)
- Network file transfers across slow Wi-Fi
- Large files being written to a nearly full disk
Here's what to do:
- Press Ctrl+Alt+Del and open Task Manager.
- Go to the Performance tab. Look at the Disk usage percentage. If it's at 100% with 0 response time, that's a red flag (see Fix 3).
- If disk usage looks normal (under 30%), just wait up to 60 seconds. Check if the file transfer progress bar starts moving again.
- If the app is unresponsive but you see disk activity in Task Manager (response time under 100ms), give it 2 more minutes. The operation may finish on its own.
After 2 minutes, if nothing changed, move to Fix 2.
Pro tip: If you're copying to a USB drive, don't yank it out yet. That can corrupt the drive. Wait or use the cancel method below.
Fix 2: Cancel the Hung Operation (5 minutes)
If waiting didn't work, you need to stop the stuck I/O operation. The quickest way is to kill the process that owns it.
- Open Task Manager (Ctrl+Shift+Esc).
- Find the program that's stuck. Common culprits:
- File Explorer (if you were dragging files)
- Robocopy or Xcopy in a command prompt
- Backup software (like Acronis, Macrium Reflect, or Veeam)
- Right-click the process and choose End task.
- If it won't die, right-click again and choose Go to details. Then right-click the process in the Details tab and select End process tree.
- After the process is gone, check if the drive is responsive by opening a new File Explorer window and clicking on the drive.
What you should see: The stuck window disappears. The drive shows up normally in File Explorer. You can copy files again. If the drive still seems dead, move to Fix 3.
Fix 3: Clear the I/O Queue at the Command Line (15+ minutes)
This is the nuclear option. When a device driver or the disk itself is holding onto I/O requests that never complete, you need to flush the queue. This requires admin rights.
Step 3a: Identify the problem drive
- Press Win + X and choose Disk Management.
- Look for the drive that's showing an error. It might have a yellow exclamation mark or show "Online (Errors)".
- Note the Disk Number (like Disk 1, Disk 2).
Step 3b: Run the cleanup commands
- Open Command Prompt as Administrator (search CMD, right-click, Run as administrator).
- Type
diskpartand press Enter. - Type
list disk. Find your problem disk by size. - Type
select disk X(replace X with the disk number from Disk Management). - Type
clean. Warning: This erases all data on that disk. Only do this if you don't need the data or have a backup.
What you should see: DiskPart prints "DiskPart succeeded in cleaning the disk." That means all pending I/O was dropped.
Step 3c: If you can't clean, force a reset
If the disk is still throwing errors after clean, the drive's firmware might be hung. In that case:
- Close the command prompt.
- Shut down the computer normally (not restart).
- If it's an external drive, unplug it.
- Wait 30 seconds, plug it back in, and boot up.
- Check Disk Management again. The drive should now show as "Online" without errors.
If the drive still shows the error after a reboot and reconnection, the drive is likely failing. Back up any critical data immediately (if you can still access it) and replace the drive.
When You Shouldn't Panic
Error 0x3E5 is one of the most common non-errors in Windows programming. Most developers see it all the time when writing async code. It's only a problem when an app doesn't handle it gracefully and hangs your file operation. The biggest mistake users make is yanking the USB cable or restarting during a write — that causes data corruption far more often than the error itself.
If you keep seeing this error with a specific program (like a backup tool or a video editor), check for updates from the vendor. They might have fixed a bug where the program doesn't properly wait for I/O completion.
Was this solution helpful?