计算机科学中,资源泄漏是指计算机程序不释放自己已获得的资源,導致资源被白白浪費。这种情况通常是由程序中的错误造成的。典型的资源泄漏包括内存泄漏句柄泄漏英语Handle leak[1]。其他操作系统可用的有限资源有網路插座文件描述符行程进程ID

资源泄漏有時不過是一个小问题,最多会导致程序運行速度下降并在进程终止后再運行程序時速度可以恢复。在其他情况下,资源泄漏可能會造成嚴重影響,例如导致饥饿和系统卡頓嚴重或不稳定,進而造成系统崩溃。[2]在短時間运行时间下,资源泄漏通常不会被注意到,當系统长时间运行時资源泄漏造成的問題就會凸顯出來。 [3]同樣地,对于数量非常少的可用资源,资源泄漏的問題尤其要注意。有時黑客就是利用资源泄漏這一問題發動阻斷服務攻擊(例如Fork炸弹)。

参考文献 编辑

  1. ^ Deitel, Harvey M.; Deitel, Paul J., C# for Programmers 2nd, Prentice Hall Professional: 443, 2005 [2015-11-15], ISBN 9780132465915, (原始内容存档于2021-09-11) .
  2. ^ Russinovich, Mark; Solomon, David; Ionescu, Alex, Windows Internals, Part 1 6th, Pearson Education: 279, 2012 [2015-11-15], ISBN 9780735671300, (原始内容存档于2021-08-28) .
  3. ^ Gregory, Kate, Using Visual C++ 6, Que Publishing: 590, 1998, ISBN 9780789715395 .