Skip to content
This repository was archived by the owner on Dec 24, 2022. It is now read-only.

Commit 2939228

Browse files
committed
Convert StringBuilder instance to use StringBuilderCache
1 parent ed73f0f commit 2939228

File tree

4 files changed

+13
-10
lines changed

4 files changed

+13
-10
lines changed

src/ServiceStack.Redis/RedisClient_Admin.cs

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -32,7 +32,7 @@ public RedisText GetServerRoleInfo()
3232

3333
public string GetConfig(string configItem)
3434
{
35-
var sb = new StringBuilder();
35+
var sb = StringBuilderCache.Allocate();
3636
var byteArray = base.ConfigGet(configItem);
3737
const int startAt = 1; //skip repeating config name
3838
for (var i = startAt; i < byteArray.Length; i++)
@@ -43,7 +43,7 @@ public string GetConfig(string configItem)
4343

4444
sb.Append(bytes.FromUtf8Bytes());
4545
}
46-
return sb.ToString();
46+
return StringBuilderCache.ReturnAndFree(sb);
4747
}
4848

4949
public void SaveConfig()

src/ServiceStack.Redis/RedisEndpoint.cs

Lines changed: 4 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1,7 +1,9 @@
11
using System;
22
using System.Collections.Generic;
3+
using System.ComponentModel;
34
using System.Text;
45
using ServiceStack.IO;
6+
using ServiceStack.Text;
57

68
namespace ServiceStack.Redis
79
{
@@ -45,7 +47,7 @@ public RedisEndpoint(string host, int port, string password = null, long db = Re
4547

4648
public override string ToString()
4749
{
48-
var sb = new StringBuilder();
50+
var sb = StringBuilderCache.Allocate();
4951
sb.AppendFormat("{0}:{1}", Host, Port);
5052

5153
var args = new List<string>();
@@ -73,7 +75,7 @@ public override string ToString()
7375
if (args.Count > 0)
7476
sb.Append("?").Append(string.Join("&", args));
7577

76-
return sb.ToString();
78+
return StringBuilderCache.ReturnAndFree(sb);
7779
}
7880

7981
protected bool Equals(RedisEndpoint other)

src/ServiceStack.Redis/RedisNativeClient_Utils.cs

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -203,7 +203,7 @@ public virtual void OnConnected()
203203

204204
protected string ReadLine()
205205
{
206-
var sb = new StringBuilder();
206+
var sb = StringBuilderCache.Allocate();
207207

208208
int c;
209209
while ((c = Bstream.ReadByte()) != -1)
@@ -214,7 +214,7 @@ protected string ReadLine()
214214
break;
215215
sb.Append((char)c);
216216
}
217-
return sb.ToString();
217+
return StringBuilderCache.ReturnAndFree(sb);
218218
}
219219

220220
public bool HasConnected
@@ -680,7 +680,7 @@ protected void Log(string fmt, params object[] args)
680680

681681
protected void CmdLog(byte[][] args)
682682
{
683-
var sb = new StringBuilder();
683+
var sb = StringBuilderCache.Allocate();
684684
foreach (var arg in args)
685685
{
686686
var strArg = arg.FromUtf8Bytes();
@@ -694,7 +694,7 @@ protected void CmdLog(byte[][] args)
694694
if (sb.Length > 100)
695695
break;
696696
}
697-
this.lastCommand = sb.ToString();
697+
this.lastCommand = StringBuilderCache.ReturnAndFree(sb);
698698
if (this.lastCommand.Length > 100)
699699
{
700700
this.lastCommand = this.lastCommand.Substring(0, 100) + "...";

src/ServiceStack.Redis/RedisPubSubServer.cs

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -3,6 +3,7 @@
33
using System.Text;
44
using System.Threading;
55
using ServiceStack.Logging;
6+
using ServiceStack.Text;
67

78
namespace ServiceStack.Redis
89
{
@@ -523,15 +524,15 @@ public string GetStatus()
523524

524525
public string GetStatsDescription()
525526
{
526-
var sb = new StringBuilder();
527+
var sb = StringBuilderCache.Allocate();
527528
sb.AppendLine("===============");
528529
sb.AppendLine("Current Status: " + GetStatus());
529530
sb.AppendLine("Times Started: " + Interlocked.CompareExchange(ref timesStarted, 0, 0));
530531
sb.AppendLine("Num of Errors: " + Interlocked.CompareExchange(ref noOfErrors, 0, 0));
531532
sb.AppendLine("Num of Continuous Errors: " + Interlocked.CompareExchange(ref noOfContinuousErrors, 0, 0));
532533
sb.AppendLine("Last ErrorMsg: " + lastExMsg);
533534
sb.AppendLine("===============");
534-
return sb.ToString();
535+
return StringBuilderCache.ReturnAndFree(sb);
535536
}
536537

537538
public virtual void Dispose()

0 commit comments

Comments
 (0)