Java虚拟机在Windows x86上不会发出预取指令,是因为Windows x86操作系统默认禁用了CPU的预取指令功能。这是为了避免一些安全漏洞,因为预取指令可能会导致敏感数据泄露。因此,Java虚拟机在Windows x86上无法使用预取指令来提高程序性能。