BaseSocket.cs 1.8 KB

12345678910111213141516171819202122232425262728293031323334353637383940414243444546474849505152535455565758
  1. //------------------------------------------------------------------------------
  2. // 此代码版权(除特别声明或在XREF结尾的命名空间的代码)归作者本人若汝棋茗所有
  3. // 源代码使用协议遵循本仓库的开源协议及附加协议,若本仓库没有设置,则按MIT开源协议授权
  4. // CSDN博客:https://blog.csdn.net/qq_40374647
  5. // 哔哩哔哩视频:https://space.bilibili.com/94253567
  6. // Gitee源代码仓库:https://gitee.com/RRQM_Home
  7. // Github源代码仓库:https://github.com/RRQM
  8. // API首页:https://www.yuque.com/rrqm/touchsocket/index
  9. // 交流QQ群:234762506
  10. // 感谢您的下载和使用
  11. //------------------------------------------------------------------------------
  12. //------------------------------------------------------------------------------
  13. using TouchSocket.Core;
  14. namespace TouchSocket.Sockets
  15. {
  16. /// <summary>
  17. /// 通讯基类
  18. /// </summary>
  19. public abstract class BaseSocket : DependencyObject, ISocket
  20. {
  21. /// <summary>
  22. /// 通讯基类
  23. /// </summary>
  24. public BaseSocket()
  25. {
  26. SyncRoot = new object();
  27. }
  28. private int m_bufferLength;
  29. /// <summary>
  30. /// 数据交互缓存池限制,min=1024 byte
  31. /// </summary>
  32. public virtual int BufferLength
  33. {
  34. get => m_bufferLength;
  35. set
  36. {
  37. if (value < 1024)
  38. {
  39. value = 1024;
  40. }
  41. m_bufferLength = value;
  42. }
  43. }
  44. /// <summary>
  45. /// 同步根。
  46. /// </summary>
  47. protected object SyncRoot;
  48. /// <summary>
  49. /// 日志记录器
  50. /// </summary>
  51. public ILog Logger { get; set; }
  52. }
  53. }