Rumah >pembangunan bahagian belakang >C++ >Bolehkah saya Menggunakan Tetapan Budaya Tunggal pada Semua Benang dalam Aplikasi .NET Saya?
Masalah: Bagaimanakah satu tetapan budaya boleh digunakan pada semua utas dalam aplikasi .NET, merangkumi kedua-dua utas sedia ada dan baru bertelur?
Penyelesaian: Ini boleh dicapai.
Dalam versi .NET 4.5 dan seterusnya, sifat CultureInfo.DefaultThreadCurrentCulture
menawarkan kaedah yang mudah. Menetapkan sifat ini pada permulaan aplikasi mewujudkan budaya lalai untuk keseluruhan AppDomain
. Semua benang, sedia ada dan akan datang, akan mewarisi budaya ini.
Untuk versi .NET sebelum 4.5, refleksi boleh digunakan untuk melaraskan budaya AppDomain
. Kelas CultureInfo
mengandungi medan statik persendirian (sama ada m_userDefaultCulture
atau s_userDefaultCulture
, bergantung pada versi .NET) yang menentukan nilai CurrentCulture
apabila urutan tidak menentukan sendiri secara eksplisit. Mengubah suai medan ini secara tidak langsung menetapkan budaya lalai.
Adalah penting untuk memahami bahawa kaedah ini tidak mengubah tempat benang asli. Tambahan pula, pengedaran aplikasi yang menggunakan teknik ini secara amnya tidak digalakkan kerana potensi keserasian dan isu yang tidak dijangka. Walau bagaimanapun, ia boleh terbukti berguna semasa pembangunan dan ujian.
Atas ialah kandungan terperinci Bolehkah saya Menggunakan Tetapan Budaya Tunggal pada Semua Benang dalam Aplikasi .NET Saya?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!