Rumah > Soal Jawab > teks badan
大家讲道理2017-04-18 10:39:44
Mengikut reka bentuk, ThreadLocal
harus wujud bergantung pada kewujudan Thread
Setiap thread boleh mempunyai ruang untuk penyimpanan, jadi saya sangat bersetuju dengan point kedua anda, Saya Tidak cukup boleh difahami.
Jika anda meletakkan map
dalam ThreadLocal
mengikut reka bentuk anda, maka map
ini mestilah daripada static
(atau pembolehubah ahli dalam ThreadLocal
tunggal), yang akan menyebabkan masalah serius dalam reka bentuk . , ini map
akan menjadi sangat sukar untuk diuruskan:
1. 试想有没有线程安全问题?
2. 线程销毁后怎么处理,不做处理这个map将会越来越大?
Reka bentuk mempunyai satu set kaedah, dan juga falsafah, yang mesti dinikmati dengan teliti.
黄舟2017-04-18 10:39:44
Sekurang-kurangnya satu perkara yang saya boleh fikirkan ialah:
Kurangkan kos pengecualian bersama
Terdapat senario: Untuk meningkatkan prestasi DateFormat, ia biasanya digabungkan dengan ThreadLocal.
怪我咯2017-04-18 10:39:44
Sesetengah reka bentuk kadangkala bukan hanya untuk prestasi Anda mesti tahu bahawa Java memberi perhatian yang paling besar kepada corak reka bentuk, dan tanggungjawab tunggal adalah salah satu prinsip yang paling penting dalam corak reka bentuk.
Sebaliknya, bukankah lebih pantas untuk melaksanakan Peta secara langsung dalam ThreadLocal daripada menggunakan Map secara langsung Namun, ini jelas melanggar tanggungjawab tunggal dan menjadikan penyelenggaraan lebih mahal?
迷茫2017-04-18 10:39:44
Jika ThreadLoad secara langsung menggunakan Map<Thread, Object> sebagai struktur data asas, apabila sebilangan besar utas menggunakan ThreadLocal, pertama sekali prestasi akses Map akan berkurangan Bersama-sama dengan kitaran hayat thread, Map yang mendasari perlu ditambah dan dipadamkan dengan kerap, yang boleh menyebabkan kesesakan prestasi dengan mudah.