在Windows系统上,Virtuallock功能可以锁定内存页面,以确保其保留在内存中,而不会换成磁盘。但是,在较旧版本的Windows(例如95、98或ME)上,Virtuallock()函数只是一个存根,没有提供保护。在POSIX系统上,Mlock()调用可确保页面将保持在内存中,但不能保证该页面不会出现在交换中。因此,它不适合用作敏感数据的保护机制。某些平台,尤其是Linux,确实可以保证该页面不会被互换,但这是非标准化的,也不可移植。致电Mlock()也需要主管特权。必须检查这两个呼叫的返回值,以确保锁定操作实际上是成功的。