C#
只负责写Bug
学习永无止境
展开
-
C# as操作符与()强制转换
as转换对象不会抛异常,当它返回null表示转换失败,值类型不可以使用as操作符! 强制转换转换失败会抛出异常,可以用try捕获。原创 2019-11-21 10:26:26 · 250 阅读 · 0 评论 -
C# 多线程Socket服务端,客户端示例
因为项目需求的缘故,我需要使用Socket编写一个提供局域网连接的服务端。之前我对Socket接触甚少,临阵磨枪,难免会踩到不少坑。 查阅了不少资料,对于设计服务端目前只了解3种设计方案: 1.同步 2.BeginXXX EndXXX 3.IOCP 1多线程同步Socket服务端非常简洁明了,编程难度低。下面是我编写的一个多线程示例:...原创 2019-08-25 09:35:05 · 1218 阅读 · 0 评论 -
C# BeginXXX EndXXX 异步Socket服务端
异步服务端相对于同步服务端,不会造成线程的阻塞。 在高并发多连接的情况下,比同步多线程具有更大的优势。当然也有缺点,Begin异步无法复用IAsyncResult,每次收发数据都会产生大量的临时对象,对服务端gc回收产生一定的影响。 BeginXXX(AsyncCallback, object) 1.AsyncCallback 参数为IAsyncResul...原创 2019-08-25 20:34:15 · 598 阅读 · 0 评论 -
VS C# 控制台应用没有生成exe
注意项目的类型:虽然都是控制台应用,但是.Net Core生成的是dll,.NET Framework生产的是exe。core可以使用dotnet XXX.dll在cmd上运行。原创 2019-09-16 14:06:53 · 2381 阅读 · 1 评论