Derleyici Hatası C3859
PCH için sanal bellek oluşturulamadı
İleti aşağıdaki notlardan birine sahiptir:
Sistem kod hata kodu döndürdü: İşletim sistemi hata iletisi
PCH: Adres, sistemin ayırma ayrıntı düzeyinin bir katı değil
PCH: Öbek daha önce ayrılmamış
PCH: İşleme boyutu çok büyük
PCH: Dosya eşlemesi arasında bellek işlenemiyor
PCH: Tüm baytları işlemeden önce tükenmiş öbek listesi
PCH: Serbest bırakmaya çalışırken beklenmeyen öbek sonu listesi
PCH: Decommit durumunda bir dosya haritasına isabet etmemelidir
PCH: Geçersiz öbek
PCH: Harita boyutu çok büyük
PCH: Dosya eşlenemiyor: bellek zaten kaydedilmiş
PCH: Dosya eşlemesi zaten var
PCH: İstenen bellek bloğu alınamıyor
Derleyicinin belleği erken ayırmasına izin vermek için /Fp kullanmayı göz önünde bulundurun
Önceden derlenmiş üst bilginiz (PCH) için yeterli sanal bellek ayrılmadı. Önceden derlenmiş üst bilginiz açık #pragma hdrstop
bir yönerge kullanıyorsa, önceden derlenmiş üst bilgi dosyası için daha büyük bir değer belirtmek üzere derleyici bayrağını kullanın /Zm
. Aksi takdirde, derlemenizdeki paralel derleme işlemlerinin sayısını azaltmayı göz önünde bulundurun. Daha fazla bilgi için bkz /Zm
. (Önceden derlenmiş üst bilgi bellek ayırma sınırını belirtme).
Bu tanılama çoğunlukla iki senaryoda gösterilir:
İlk senaryo, sistemin aynı anda birden çok /Yu
derleme isteğiyle aşırı yüklenmesidir. Başlangıç sanal bellek boyutu üst sınırını ayarlamak genellikle bu sorunu çözer.
İkinci senaryo, Windows yükleyicisinin başlangıçta işleme bir DLL eklemesidir. Eklenen DLL, PCH'nin bulunması gereken yerle çakşan bellek ayırabilir. Örneğin, msbuild.exe
başlangıçtaki her CL.exe
işleme eklerFileTracker.dll
. Bu senaryoda, (Name .pch file) bayrağının kullanılması /Fp
, eklenen DLL'ler adres alanını kaplamaya çalışmadan önce PCH belleğinin CL.exe
işlemde mümkün olan en erken zamanda ayrılmasını sağlar. Windows Adres Alanı Düzeni Rastgele Seçim (ASLR) farklı işlem çağrılarında farklı adreslerde bellek ayırdığından bu hatalar aralıklı olabilir. olmadan/Fp
, derleyici komut satırı seçeneğinde /Yu
veya #pragma hdrstop
içinde belirtilen üst bilgi dosyasını #include
bulana kadar PCH için bellek ayrılamaz. Bu zamana kadar, PCH'nin gerektirdiği belleğin zaten ayrılmış olma olasılığı çok daha yüksektir.
Geri Bildirim
https://aka.ms/ContentUserFeedback.
Çok yakında: 2024 boyunca, içerik için geri bildirim mekanizması olarak GitHub Sorunları’nı kullanımdan kaldıracak ve yeni bir geri bildirim sistemiyle değiştireceğiz. Daha fazla bilgi için bkz.Gönderin ve geri bildirimi görüntüleyin