|
4 | 4 |
|
5 | 5 | <h3 align="center"> |
6 | 6 |
|
7 | | - [](https://www.nuget.org/packages/StringBuilderArray/) |
| 7 | + [](https://www.nuget.org/packages/StringBuilderArray/) |
8 | 8 | [](https://www.nuget.org/packages/StringBuilderArray/) |
9 | 9 | [](https://github.com/SoftStoneDevelop/StringBuilderArray/stargazers) |
10 | 10 | [](LICENSE) |
@@ -49,76 +49,41 @@ Benchmark: |
49 | 49 |
|
50 | 50 | ``` |
51 | 51 |
|
52 | | -| Method | Job | Runtime | StrLength | Mean | Ratio | Gen0 | Gen1 | Gen2 | Allocated | Alloc Ratio | |
53 | | -|------------------- |--------------------- |--------------------- |---------- |----------------:|------:|----------:|----------:|----------:|--------------:|------------:| |
54 | | -| **StringBuilder** | **.NET 7.0** | **.NET 7.0** | **5** | **19.11 μs** | **1.00** | **-** | **-** | **-** | **30.98 KB** | **1.00** | |
55 | | -| StringBuilderArray | .NET 7.0 | .NET 7.0 | 5 | 31.31 μs | 1.62 | - | - | - | 34.7 KB | 1.12 | |
56 | | -| | | | | | | | | | | | |
57 | | -| StringBuilder | .NET Framework 4.8.1 | .NET Framework 4.8.1 | 5 | 24.59 μs | 1.00 | - | - | - | 37.77 KB | 1.00 | |
58 | | -| StringBuilderArray | .NET Framework 4.8.1 | .NET Framework 4.8.1 | 5 | 14.66 μs | 0.60 | - | - | - | 39.77 KB | 1.05 | |
59 | | -| | | | | | | | | | | | |
60 | | -| **StringBuilder** | **.NET 7.0** | **.NET 7.0** | **7** | **20.76 μs** | **1.00** | **-** | **-** | **-** | **50.59 KB** | **1.00** | |
61 | | -| StringBuilderArray | .NET 7.0 | .NET 7.0 | 7 | 32.11 μs | 1.58 | - | - | - | 38.61 KB | 0.76 | |
62 | | -| | | | | | | | | | | | |
63 | | -| StringBuilder | .NET Framework 4.8.1 | .NET Framework 4.8.1 | 7 | 24.95 μs | 1.00 | - | - | - | 57.35 KB | 1.00 | |
64 | | -| StringBuilderArray | .NET Framework 4.8.1 | .NET Framework 4.8.1 | 7 | 14.82 μs | 0.60 | - | - | - | 43.68 KB | 0.76 | |
65 | | -| | | | | | | | | | | | |
66 | | -| **StringBuilder** | **.NET 7.0** | **.NET 7.0** | **10** | **20.49 μs** | **1.00** | **-** | **-** | **-** | **56.45 KB** | **1.00** | |
67 | | -| StringBuilderArray | .NET 7.0 | .NET 7.0 | 10 | 31.46 μs | 1.49 | - | - | - | 44.47 KB | 0.79 | |
68 | | -| | | | | | | | | | | | |
69 | | -| StringBuilder | .NET Framework 4.8.1 | .NET Framework 4.8.1 | 10 | 25.54 μs | 1.00 | - | - | - | 63.21 KB | 1.00 | |
70 | | -| StringBuilderArray | .NET Framework 4.8.1 | .NET Framework 4.8.1 | 10 | 15.08 μs | 0.59 | - | - | - | 49.54 KB | 0.78 | |
71 | | -| | | | | | | | | | | | |
72 | | -| **StringBuilder** | **.NET 7.0** | **.NET 7.0** | **50** | **31.72 μs** | **1.00** | **-** | **-** | **-** | **206.36 KB** | **1.00** | |
73 | | -| StringBuilderArray | .NET 7.0 | .NET 7.0 | 50 | 34.72 μs | 1.22 | - | - | - | 122.59 KB | 0.59 | |
74 | | -| | | | | | | | | | | | |
75 | | -| StringBuilder | .NET Framework 4.8.1 | .NET Framework 4.8.1 | 50 | 30.14 μs | 1.00 | - | - | - | 208.5 KB | 1.00 | |
76 | | -| StringBuilderArray | .NET Framework 4.8.1 | .NET Framework 4.8.1 | 50 | 14.49 μs | 0.48 | - | - | - | 127.64 KB | 0.61 | |
77 | | -| | | | | | | | | | | | |
78 | | -| **StringBuilder** | **.NET 7.0** | **.NET 7.0** | **100** | **50.03 μs** | **1.00** | **-** | **-** | **-** | **413.8 KB** | **1.00** | |
79 | | -| StringBuilderArray | .NET 7.0 | .NET 7.0 | 100 | 38.52 μs | 0.95 | - | - | - | 220.25 KB | 0.53 | |
80 | | -| | | | | | | | | | | | |
81 | | -| StringBuilder | .NET Framework 4.8.1 | .NET Framework 4.8.1 | 100 | 46.52 μs | 1.00 | - | - | - | 415.86 KB | 1.00 | |
82 | | -| StringBuilderArray | .NET Framework 4.8.1 | .NET Framework 4.8.1 | 100 | 24.81 μs | 0.57 | - | - | - | 225.3 KB | 0.54 | |
83 | | -| | | | | | | | | | | | |
84 | | -| **StringBuilder** | **.NET 7.0** | **.NET 7.0** | **1000** | **761.80 μs** | **1.00** | **-** | **-** | **-** | **3935.53 KB** | **1.00** | |
85 | | -| StringBuilderArray | .NET 7.0 | .NET 7.0 | 1000 | 527.09 μs | 0.71 | - | - | - | 1978.06 KB | 0.50 | |
86 | | -| | | | | | | | | | | | |
87 | | -| StringBuilder | .NET Framework 4.8.1 | .NET Framework 4.8.1 | 1000 | 722.85 μs | 1.00 | - | - | - | 3940.05 KB | 1.00 | |
88 | | -| StringBuilderArray | .NET Framework 4.8.1 | .NET Framework 4.8.1 | 1000 | 538.31 μs | 0.77 | - | - | - | 1983.11 KB | 0.50 | |
89 | | -| | | | | | | | | | | | |
90 | | -| **StringBuilder** | **.NET 7.0** | **.NET 7.0** | **2500** | **1,901.71 μs** | **1.00** | **-** | **-** | **-** | **9804.08 KB** | **1.00** | |
91 | | -| StringBuilderArray | .NET 7.0 | .NET 7.0 | 2500 | 1,406.46 μs | 0.75 | - | - | - | 4907.75 KB | 0.50 | |
92 | | -| | | | | | | | | | | | |
93 | | -| StringBuilder | .NET Framework 4.8.1 | .NET Framework 4.8.1 | 2500 | 1,817.16 μs | 1.00 | - | - | - | 9818.19 KB | 1.00 | |
94 | | -| StringBuilderArray | .NET Framework 4.8.1 | .NET Framework 4.8.1 | 2500 | 1,331.79 μs | 0.75 | - | - | - | 4912.8 KB | 0.50 | |
95 | | -| | | | | | | | | | | | |
96 | | -| **StringBuilder** | **.NET 7.0** | **.NET 7.0** | **5000** | **5,295.15 μs** | **1.00** | **1000.0000** | **-** | **-** | **19583.76 KB** | **1.00** | |
97 | | -| StringBuilderArray | .NET 7.0 | .NET 7.0 | 5000 | 2,739.29 μs | 0.51 | - | - | - | 9790.56 KB | 0.50 | |
98 | | -| | | | | | | | | | | | |
99 | | -| StringBuilder | .NET Framework 4.8.1 | .NET Framework 4.8.1 | 5000 | 4,455.02 μs | 1.00 | 1000.0000 | - | - | 19608.41 KB | 1.00 | |
100 | | -| StringBuilderArray | .NET Framework 4.8.1 | .NET Framework 4.8.1 | 5000 | 2,670.66 μs | 0.59 | - | - | - | 9795.61 KB | 0.50 | |
101 | | -| | | | | | | | | | | | |
102 | | -| **StringBuilder** | **.NET 7.0** | **.NET 7.0** | **10000** | **9,537.17 μs** | **1.00** | **2000.0000** | **1000.0000** | **-** | **39162.77 KB** | **1.00** | |
103 | | -| StringBuilderArray | .NET 7.0 | .NET 7.0 | 10000 | 5,241.92 μs | 0.55 | - | - | - | 19556.19 KB | 0.50 | |
104 | | -| | | | | | | | | | | | |
105 | | -| StringBuilder | .NET Framework 4.8.1 | .NET Framework 4.8.1 | 10000 | 11,162.79 μs | 1.00 | 3000.0000 | 2000.0000 | - | 39212.8 KB | 1.00 | |
106 | | -| StringBuilderArray | .NET Framework 4.8.1 | .NET Framework 4.8.1 | 10000 | 5,184.84 μs | 0.47 | - | - | - | 19561.23 KB | 0.50 | |
107 | | -| | | | | | | | | | | | |
108 | | -| **StringBuilder** | **.NET 7.0** | **.NET 7.0** | **100000** | **55,240.60 μs** | **1.00** | **4000.0000** | **4000.0000** | **3000.0000** | **390802.46 KB** | **1.00** | |
109 | | -| StringBuilderArray | .NET 7.0 | .NET 7.0 | 100000 | 20,971.15 μs | 0.38 | - | - | - | 195337.44 KB | 0.50 | |
110 | | -| | | | | | | | | | | | |
111 | | -| StringBuilder | .NET Framework 4.8.1 | .NET Framework 4.8.1 | 100000 | 107,904.39 μs | 1.00 | 5000.0000 | 4000.0000 | 3000.0000 | 390850.55 KB | 1.00 | |
112 | | -| StringBuilderArray | .NET Framework 4.8.1 | .NET Framework 4.8.1 | 100000 | 49,812.44 μs | 0.46 | - | - | - | 195342.48 KB | 0.50 | |
113 | | -| | | | | | | | | | | | |
114 | | -| **StringBuilder** | **.NET 7.0** | **.NET 7.0** | **500000** | **212,051.93 μs** | **1.00** | **5000.0000** | **4000.0000** | **4000.0000** | **1953310.77 KB** | **1.00** | |
115 | | -| StringBuilderArray | .NET 7.0 | .NET 7.0 | 500000 | 104,972.60 μs | 0.50 | - | - | - | 976587.44 KB | 0.50 | |
116 | | -| | | | | | | | | | | | |
117 | | -| StringBuilder | .NET Framework 4.8.1 | .NET Framework 4.8.1 | 500000 | 525,755.95 μs | 1.00 | 6000.0000 | 5000.0000 | 4000.0000 | 1953358.61 KB | 1.00 | |
118 | | -| StringBuilderArray | .NET Framework 4.8.1 | .NET Framework 4.8.1 | 500000 | 247,554.09 μs | 0.47 | - | - | - | 976592.48 KB | 0.50 | |
119 | | -| | | | | | | | | | | | |
120 | | -| **StringBuilder** | **.NET 7.0** | **.NET 7.0** | **1071741** | **288,194.84 μs** | **1.00** | **5000.0000** | **4000.0000** | **4000.0000** | **4186664.2 KB** | **1.00** | |
121 | | -| StringBuilderArray | .NET 7.0 | .NET 7.0 | 1071741 | 152,733.12 μs | 0.53 | - | - | - | 2093269.08 KB | 0.50 | |
122 | | -| | | | | | | | | | | | |
123 | | -| StringBuilder | .NET Framework 4.8.1 | .NET Framework 4.8.1 | 1071741 | 1,037,825.78 μs | 1.00 | 6000.0000 | 5000.0000 | 4000.0000 | 4186723.62 KB | 1.00 | |
124 | | -| StringBuilderArray | .NET Framework 4.8.1 | .NET Framework 4.8.1 | 1071741 | 495,930.11 μs | 0.48 | - | - | - | 2093274.13 KB | 0.50 | |
| 52 | +| Method | StrLength | Mean | Ratio | Gen0 | Gen1 | Gen2 | Allocated | Alloc Ratio | |
| 53 | +|------------------- |---------- |--------------:|------:|----------:|----------:|----------:|--------------:|------------:| |
| 54 | +| **StringBuilder** | **5** | **18.40 μs** | **1.00** | **-** | **-** | **-** | **30.98 KB** | **1.00** | |
| 55 | +| StringBuilderArray | 5 | 32.89 μs | 1.79 | - | - | - | 34.7 KB | 1.12 | |
| 56 | +| | | | | | | | | | |
| 57 | +| **StringBuilder** | **7** | **20.89 μs** | **1.00** | **-** | **-** | **-** | **50.59 KB** | **1.00** | |
| 58 | +| StringBuilderArray | 7 | 32.57 μs | 1.57 | - | - | - | 38.61 KB | 0.76 | |
| 59 | +| | | | | | | | | | |
| 60 | +| **StringBuilder** | **10** | **16.01 μs** | **1.00** | **-** | **-** | **-** | **56.45 KB** | **1.00** | |
| 61 | +| StringBuilderArray | 10 | 34.88 μs | 2.23 | - | - | - | 44.47 KB | 0.79 | |
| 62 | +| | | | | | | | | | |
| 63 | +| **StringBuilder** | **50** | **23.38 μs** | **1.00** | **-** | **-** | **-** | **206.36 KB** | **1.00** | |
| 64 | +| StringBuilderArray | 50 | 36.02 μs | 1.48 | - | - | - | 122.59 KB | 0.59 | |
| 65 | +| | | | | | | | | | |
| 66 | +| **StringBuilder** | **100** | **27.13 μs** | **1.00** | **-** | **-** | **-** | **413.8 KB** | **1.00** | |
| 67 | +| StringBuilderArray | 100 | 43.94 μs | 1.77 | - | - | - | 220.25 KB | 0.53 | |
| 68 | +| | | | | | | | | | |
| 69 | +| **StringBuilder** | **1000** | **735.77 μs** | **1.00** | **-** | **-** | **-** | **3935.53 KB** | **1.00** | |
| 70 | +| StringBuilderArray | 1000 | 570.10 μs | 0.80 | - | - | - | 1978.06 KB | 0.50 | |
| 71 | +| | | | | | | | | | |
| 72 | +| **StringBuilder** | **2500** | **1,790.58 μs** | **1.00** | **-** | **-** | **-** | **9804.08 KB** | **1.00** | |
| 73 | +| StringBuilderArray | 2500 | 1,412.22 μs | 0.79 | - | - | - | 4907.75 KB | 0.50 | |
| 74 | +| | | | | | | | | | |
| 75 | +| **StringBuilder** | **5000** | **4,863.92 μs** | **1.00** | **1000.0000** | **-** | **-** | **19583.76 KB** | **1.00** | |
| 76 | +| StringBuilderArray | 5000 | 2,689.05 μs | 0.55 | - | - | - | 9790.56 KB | 0.50 | |
| 77 | +| | | | | | | | | | |
| 78 | +| **StringBuilder** | **10000** | **10,137.72 μs** | **1.00** | **2000.0000** | **1000.0000** | **-** | **39162.77 KB** | **1.00** | |
| 79 | +| StringBuilderArray | 10000 | 5,259.71 μs | 0.51 | - | - | - | 19556.19 KB | 0.50 | |
| 80 | +| | | | | | | | | | |
| 81 | +| **StringBuilder** | **100000** | **54,801.69 μs** | **1.00** | **4000.0000** | **4000.0000** | **3000.0000** | **390802.44 KB** | **1.00** | |
| 82 | +| StringBuilderArray | 100000 | 20,538.66 μs | 0.37 | - | - | - | 195337.44 KB | 0.50 | |
| 83 | +| | | | | | | | | | |
| 84 | +| **StringBuilder** | **500000** | **210,721.40 μs** | **1.00** | **5000.0000** | **4000.0000** | **4000.0000** | **1953310.77 KB** | **1.00** | |
| 85 | +| StringBuilderArray | 500000 | 105,015.80 μs | 0.50 | - | - | - | 976587.44 KB | 0.50 | |
| 86 | +| | | | | | | | | | |
| 87 | +| **StringBuilder** | **1071741** | **289,243.13 μs** | **1.00** | **5000.0000** | **4000.0000** | **4000.0000** | **4186664.2 KB** | **1.00** | |
| 88 | +| StringBuilderArray | 1071741 | 152,814.02 μs | 0.53 | - | - | - | 2093269.08 KB | 0.50 | |
| 89 | + |
0 commit comments