asp.net 的Memcached用法【高分求解】

风2013 2012-03-05 05:30:40

/// <summary>
/// 统计浏览次数
/// </summary>
public void UpdateShowTimes()
{
string[] serverlist = { "10.0.0.131:11211", "10.0.0.132:11211" };
//初始化池
SockIOPool pool = SockIOPool.GetInstance();
pool.SetServers(serverlist);

pool.InitConnections = 3;
pool.MinConnections = 3;
pool.MaxConnections = 5;

pool.SocketConnectTimeout = 1000;
pool.SocketTimeout = 3000;

pool.MaintenanceSleep = 30;
pool.Failover = true;

pool.Nagle = false;
pool.Initialize(); //第二次执行时 报另外一个进程在使用错误
// 获得客户端实例
MemcachedClient mc = new MemcachedClient();
mc.EnableCompression = false;
var mtc = mc.KeyExists("ShopShowTimes");
var b = true;
if (mtc)
{
//.......
}
else
{
mc.Set("ShopShowTimes", "ssss")
}

SockIOPool.GetInstance().Shutdown();
}


如图上所述错误..求高手指点
...全文
171 10 打赏 收藏 转发到动态 举报
写回复
用AI写文章
10 条回复
切换为时间正序
请发表友善的回复…
发表回复
gouyanfeng1 2013-07-05
  • 打赏
  • 举报
回复
引用 5 楼 jshi123 的回复:
试下修改SockIOPool.cs文件,在1086行增加一句把maintenance thread设为null

	[MethodImpl(MethodImplOptions.Synchronized)]
	public void Shutdown()
	{
		if (Log.IsDebugEnabled)
		{
			Log.Debug(GetLocalizedString("start socket pool shutdown"));
		}

		if (_maintenanceThread != null && _maintenanceThread.IsRunning)
			StopMaintenanceThread();


		_maintenanceThread = null; // 添加这一行

		// ...
	}
我也是遇到这个问题。这个回答是正解。牛逼啊牛逼!
jshi123 2012-03-06
  • 打赏
  • 举报
回复
是memcacheddotnet? 这个是开源的,可以去下载源码来改
风2013 2012-03-06
  • 打赏
  • 举报
回复
期待解答
风2013 2012-03-06
  • 打赏
  • 举报
回复
[Quote=引用 5 楼 jshi123 的回复:]
试下修改SockIOPool.cs文件,在1086行增加一句把maintenance thread设为null

C# code


[MethodImpl(MethodImplOptions.Synchronized)]
public void Shutdown()
{
if (Log.IsDebugEnabled)
{
……
[/Quote]

我用的mamcached是第三方的一个缓存方法,通过引用的 SockIOPool.cs这个类的代码我没有额
冰镇宝贝321 2012-03-06
  • 打赏
  • 举报
回复
帮顶。。。应该多去看看这方面的资料。。。学习了
jshi123 2012-03-05
  • 打赏
  • 举报
回复
试下修改SockIOPool.cs文件,在1086行增加一句把maintenance thread设为null

[MethodImpl(MethodImplOptions.Synchronized)]
public void Shutdown()
{
if (Log.IsDebugEnabled)
{
Log.Debug(GetLocalizedString("start socket pool shutdown"));
}

if (_maintenanceThread != null && _maintenanceThread.IsRunning)
StopMaintenanceThread();


_maintenanceThread = null; // 添加这一行

// ...
}
风2013 2012-03-05
  • 打赏
  • 举报
回复
[Quote=引用楼主 feng1366259807 的回复:]
pool.Initialize(); //线程正在运行或被终止;它无法重新启动
[/Quote]

补充一下错误提示
showIT 2012-03-05
  • 打赏
  • 举报
回复
这个没遇到过,楼主多去看下他们官网资料,http://memcached.org/
tan598121925 2012-03-05
  • 打赏
  • 举报
回复
帮顶 顺便学习
风2013 2012-03-05
  • 打赏
  • 举报
回复
pool.Initialize(); //第二次执行时 报另外一个进程在使用错误

本来想把这一句标红的

62,025

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术交流专区
javascript云原生 企业社区
社区管理员
  • ASP.NET
  • .Net开发者社区
  • R小R
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

.NET 社区是一个围绕开源 .NET 的开放、热情、创新、包容的技术社区。社区致力于为广大 .NET 爱好者提供一个良好的知识共享、协同互助的 .NET 技术交流环境。我们尊重不同意见,支持健康理性的辩论和互动,反对歧视和攻击。

希望和大家一起共同营造一个活跃、友好的社区氛围。

试试用AI创作助手写篇文章吧