Artikel ini menjelaskan rollup hotfix yang tersedia untuk Microsoft .NET Framework 4.6.1 dan 4.6. Untuk informasi selengkapnya tentang masalah yang diperbaiki rollup hotfix ini, lihat bagian Masalah yang diperbaiki rollup hotfix ini.

Pemecahan Masalah

Mengunduh informasi

Hotfix yang sesuai dengan KB3139549 telah menggantikan dengan pembaruan terbaru .NET Framework, yang berisi semua perbaikan yang sebelumnya disertakan dalam KB3139549. Disarankan untuk menginstal pembaruan terkini dari .NET Framework.

Untuk informasi lebih lanjut tentang cara mengunduh file pendukung Microsoft, klik nomor artikel di bawah ini untuk melihat artikel pada Pangkalan Pengetahuan Microsoft:

119591 Cara mendapatkan file dukungan Microsoft dari layanan online Yang dipindai Microsoft untuk virus. Microsoft menggunakan perangkat lunak deteksi virus terbaru yang tersedia pada tanggal file tersebut diposting. File akan disimpan di server keamanan yang disempurnakan untuk membantu mencegah perubahan yang tidak sah pada file.

Informasi Selengkapnya

Prasyarat

Untuk menerapkan hotfix ini, Anda harus memiliki .NET Framework 4.6.1 atau 4.6 yang sudah diinstal .NET Framework 4.6.


 

Persyaratan mulai ulang

Anda harus memulai ulang komputer setelah menerapkan hotfix ini jika semua file yang terpengaruh sedang digunakan. Kami menyarankan agar Anda keluar .NET Framework aplikasi berbasis hotfix ini sebelum Anda menerapkan hotfix ini.
 

Informasi penggantian hotfix

Paket hotfix ini tidak menggantikan paket hotfix yang dirilis sebelumnya.

Masalah yang diperbaiki rollup hotfix ini

Masalah 1

Ketika aplikasi WPF menggunakan elemen TreeViewItem di luar konteks TreeView, aplikasi mungkin mengalami pengecualian InvalidCastException yang jejak tumpukannya dimulai sebagai berikut:
 

Sistem. Windows. Controls.VirtualizingPanel.FindScrollOffset(Visual v)


Catatan Pengecualian ini terjadi ketika elemen TreeViewItem berada dalam kontrol daftar yang divirtualisasikan (misalnya, kontrol ListBox, DataGrid, atau ListView) yang mencoba menemukan offset gulir dari TreeViewItem atau salah satu turnya. Misalnya, jika Anda mendeklarasikan TreeViewItem sebagai akar DataTemplate, dan DataTemplate digunakan sebagai CellTemplate dari kolom DataGrid, pengecualian ini terjadi.
 

Masalah 2

System.Web.Caching dan System.Runtime.Caching melaporkan ukuran memori yang digunakan oleh seluruh AppDomain, bukan ukuran memori yang digunakan oleh item cache.

Ini adalah masalah regresi dari .NET Framework 4,5 ketika perubahan dalam implementasi Pengatur Waktu dilakukan. Selain melaporkan ukuran yang tidak benar, objek tambahan yang direferensikan oleh cache mungkin secara signifikan mempengaruhi latensi Gen2 GC. Di ASP.NET hosting gratis, singgahan juga salah menghitung ukuran semua cache di semua domain aplikasi (dilaporkan melalui Batas Memori Proses % Singgahan Digunakan ASP.NET penghitung kinerja) saat domain aplikasi digunakan.

Perbaikan tersebut menghapus referensi yang tidak diinginkan dari cache ke objek domain aplikasi lainnya, lalu ukuran yang tepat dilaporkan. Ini juga menyertakan perubahan untuk meningkatkan latensi untuk System.Runtime.Caching di komputer multi-inti yang menggunakan Server GC. Terakhir, perbaikan ini menghitung ukuran semua cache dalam skenario daur ulang domain aplikasi dengan benar.
 

Masalah 3

Saat Anda memiliki aplikasi Windows Presentation Foundation (WPF) yang bergantung pada promosi hingga gerakan mouse untuk menangani pemindahan interaksi pengguna sentuh (daripada langsung menggunakan acara sentuh), Anda mungkin mengalami volume gerakan mouse yang dipromosikan yang sangat rendah. 

Di masa lalu, promosi mouse yang terbatas pada WPF terkait gerakan sentuhan karena volume sentuhan yang berpindah ke luar biasa oleh dispatcher. Dalam .NET Framework 4.6.1, perbaikan telah dilakukan untuk perilaku ini. Perbaikan tersebut terbatas pada jumlah gerakan sentuh yang diproses. Oleh karena itu, pembatasan promosi mouse menyebabkan pengurangan lebih lanjut dalam gerakan mouse yang dihasilkan. Dalam rollup pembaruan ini, pembatasan promosi mouse telah dihapus, dan sekarang seharusnya ada korespondensi 1-1 antara acara pemindahan sentuhan dan acara pemindahan mouse yang dipromosikan. 
 

Masalah 4

Anggaplah Anda bekerja dengan aplikasi WPF yang menargetkan .NET Framework 4.6. Misalnya, anggaplah Anda mencoba mengatur CurrentThread.Current Invoke atau CurrentThread.CurrentUIBeratasi dalam metode apa pun (seperti penanganan kejadian UI atau konstruktor MainWindow) yang diminta oleh Dispatcher WPF menggunakan DispatcherOperation. Dalam situasi ini, nilai Current Reset dan CurrentUISertanya direset ke nilai sebelumnya masing-masing pada akhir metode. Jika sebuah aplikasi mengatur CurrentUIWindow dalam konstruktor MainWindow atau penanganan Klik Tombol, pengaturan itu mengembalikan kembali ke budaya UI sistem.

Perbaikan ini memastikan bahwa nilai CurrentThread.Current Fix/CurrentUI Zoom yang bisa diatur dalam metode di aplikasi WPF tetap seperti yang dilakukan sebelum .NET Framework 4.6.


 

Masalah 5

Dalam versi .NET Framework 4.6, bendera baru, TaskContinuationOptions.RunContinuationsAsynchronously, ditambahkan ke pustaka Tugas. Namun, ketika Anda menggunakan bendera ini dalam hubungannya dengan Task.WhenAll, Task.WhenAny atau Task.Unwrap, bendera tidak memiliki efek apa pun. Bendera diperkenalkan untuk menghindari kondisi kemacetan tertentu. Perbaikan ini memastikan bahwa semua tipe Kelanjutan tugas menghargai bendera baru.

Masalah 6

AppContext adalah bagian dari infrastruktur untuk mengurangi perubahan yang putus. Anda bisa menggunakan AppContext untuk menyetel dan mengambil bendera dan membuat keputusan di aplikasi yang didasarkan pada data itu. Dalam .NET Framework 4.6, terdapat bug di AppContext ketika keamananad metode AppContext diterapkan dengan tidak benar. 

Perbaikan ini memungkinkan memperbaiki keamanan utas untuk metode di AppContext yang terkait dengan pengaturan dan mengambil nilai sakelar.

Masalah 7

Ketika Anda menekan kasus tepi dengan alokasi dan pola keberlangsungan, dan Anda memerlukan segmen baru di tumpukan yang dikelola, kesalahan sampah mungkin menghitung ukuran tindakan yang lebih kecil dari seharusnya. Hal ini menyebabkan pelanggaran akses selama fase ringkas, karena kartu sampah mencoba ditulis ke memori yang tidak dipadatkan. Perbaikan ini menghitung ukuran dengan benar.

Masalah 8

Ketika Anda membuat kode asli untuk metode tertentu, aplikasi .NET Framework dan proses NGEN mungkin mengalami crash.

Masalah 9

RyuJit menghasilkan instruksi yang salah untuk membandingkan bilangan bulat 16-bit yang tidak ditandatangani pada daftar. Ini menghasilkan hasil yang tidak benar jika nilai input memiliki nilai MSB berbeda, dan oleh karena itu menghasilkan instruksi bandingkan yang hanya menggunakan operand register. Perbaikan ini menghasilkan instruksi yang benar.

Perlu bantuan lainnya?

Kembangkan keterampilan Anda

JELAJAHI PELATIHAN >

Dapatkan fitur baru terlebih dahulu

GABUNG MICROSOFT INSIDER >

Apakah informasi ini bermanfaat?

Seberapa puaskah Anda dengan kualitas bahasanya?
Apa yang memengaruhi pengalaman Anda?

Terima kasih atas umpan balik Anda!

×