资源简介
rabbitmq封装,采用连接池,频道也是采用连接池。减少频繁连接造成的资源消耗。如果代码有误的地方请指出。
代码片段和文件信息
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading;
using System.Threading.Tasks;
using RabbitMQ.Client;
namespace MQCore
{
internal class ConnectionInfo : IConnectionInfo
{
IConnection connection;
ChannelPool channelPool;
object _lock = new object();
public ConnectionInfo(IConnection connection int capacity)
{
this.connection = connection;
channelPool = new ChannelPool(capacity);
}
public int createChannelNum { get { return channelPool == null ? 0 : channelPool.createChannelNum; } }
///
/// 检查是否允许释放
///
///
public bool CheckCanFree()
{
channelPool.TimeFree();
return channelPool.Count == 0;
}
///
/// 释放
///
public void Free()
{
connection = null;
channelPool = null;
}
public IMQChannel CreateModel()
{
lock (_lock)
{
return channelPool.Pop(()=> {
channelPool.Push(new MQChannel(channelPool connection.CreateModel()) true);
});
}
}
public void Dispose()
{
}
}
}
属性 大小 日期 时间 名称
----------- --------- ---------- ----- ----
文件 85798 2019-08-20 15:44 MQ\.vs\config\applicationhost.config
..A..H. 101888 2019-08-23 16:45 MQ\.vs\MQ\v15\.suo
文件 1588 2019-08-21 10:48 MQ\MQ.sln
文件 170288 2015-12-01 14:31 MQ\MQCore\bin\Debug\Microsoft.Diagnostics.Tracing.EventSource.dll
文件 19456 2019-08-23 16:42 MQ\MQCore\bin\Debug\MQCore.dll
文件 77312 2019-08-23 16:42 MQ\MQCore\bin\Debug\MQCore.pdb
文件 276480 2018-06-18 15:49 MQ\MQCore\bin\Debug\RabbitMQ.Client.dll
文件 1463 2019-08-23 15:23 MQ\MQCore\ConnectionInfo.cs
文件 644 2019-08-23 15:15 MQ\MQCore\interface\IConnectionInfo.cs
文件 368 2019-08-23 11:05 MQ\MQCore\interface\IMQChannel.cs
文件 855 2019-08-22 17:23 MQ\MQCore\interface\IMQManage.cs
文件 962 2019-08-20 19:09 MQ\MQCore\interface\IMQManageConfig.cs
文件 646 2019-08-23 11:06 MQ\MQCore\MQChannel.cs
文件 3123 2019-08-22 18:00 MQ\MQCore\MQCore.csproj
文件 1709 2019-08-23 16:42 MQ\MQCore\MQManage.cs
文件 1024 2019-08-20 19:09 MQ\MQCore\MQManageConfig.cs
文件 2143 2019-08-22 11:41 MQ\MQCore\msg\Message.cs
文件 8221 2019-08-22 17:54 MQ\MQCore\msg\RabbitMqDelayPublisher.cs
文件 5518 2019-08-22 17:54 MQ\MQCore\msg\RabbitMqListener.cs
文件 6554 2019-08-22 18:15 MQ\MQCore\msg\RabbitMqPublisher.cs
文件 3626 2019-08-22 17:58 MQ\MQCore\msg\RabbitMqQuery.cs
文件 12510 2019-08-22 17:59 MQ\MQCore\obj\Debug\DesignTimeResolveAssemblyReferencesInput.cache
文件 0 2019-08-23 16:42 MQ\MQCore\obj\Debug\MQCore.csproj.CopyComplete
文件 42 2019-08-23 15:23 MQ\MQCore\obj\Debug\MQCore.csproj.CoreCompileInputs.cache
文件 1304 2019-08-23 16:41 MQ\MQCore\obj\Debug\MQCore.csproj.FileListAbsolute.txt
文件 8424 2019-08-23 16:41 MQ\MQCore\obj\Debug\MQCore.csprojAssemblyReference.cache
文件 19456 2019-08-23 16:42 MQ\MQCore\obj\Debug\MQCore.dll
文件 77312 2019-08-23 16:42 MQ\MQCore\obj\Debug\MQCore.pdb
文件 0 2019-08-20 19:03 MQ\MQCore\obj\Debug\MQManage.csproj.CopyComplete
文件 42 2019-08-20 19:03 MQ\MQCore\obj\Debug\MQManage.csproj.CoreCompileInputs.cache
............此处省略168个文件信息
评论
共有 条评论