Kecekapan sambungan strough: Dalam perbincangan -Depth
Dalam operasi sambungan rentetan, kecekapan sangat penting, terutamanya apabila berurusan dengan sejumlah besar rentetan atau sering melaksanakan operasi sambungan. Umumnya, orang memilih '' 'atau StringBuilder untuk sambungan rentetan, tetapi pilihan terbaik tidak umum.
Pakar Prestasi Senior .NET Rico Mariani menjalankan analisis dalam masalah ini. Beliau mencadangkan untuk memilih penyelesaian yang sesuai berdasarkan mod berikut:
Sambungan One -Time
: Jika anda perlu melaksanakan operasi sambungan yang serupa dengan "x = f1 (...) f2 (...) f3 (...) f4 (... ) ", Iaitu, untuk melengkapkan sambungan pelbagai rentetan dalam baris kod, maka pengendali '' 'adalah penyelesaian yang cepat dan berkesan. Dalam kes ini, StringBuilder tidak akan membawa peningkatan prestasi yang ketara. -
Sambungan meningkat : sebaliknya, jika mod anda lebih serupa dengan "jika (...) x = f1 (...)", "jika (...) x = f2 (... "...", "jika (...) x = f3 (...)", "jika (...) x = f4 (...)", iaitu, secara beransur -ansur tambah rentetan Dalam pembolehubah 'X', maka StringBuilder akan lebih berfaedah. Ia mengelakkan pengedaran memori yang tidak perlu dan penciptaan rentetan, dengan itu meningkatkan prestasi.
-
Satu lagi pakar terkenal Eric Lippert juga menjelaskan secara terperinci teknologi pengoptimuman apabila menggunakan '' 'semasa sambungan satu talian. Analisisnya menekankan kelebihan kecekapan kaedah ini dalam senario tertentu.
Oleh itu, kunci untuk memilih kaedah sambungan rentetan yang paling berkesan adalah untuk menganalisis senario aplikasi tertentu dan mempertimbangkan ciri -ciri sambungan satu masa dan sambungan tambahan.
Atas ialah kandungan terperinci StringBuilder atau '' Operator: Mana yang lebih efisien untuk penyambungan rentetan?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!