自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

发展是曲折的但也是前进的

人生路漫漫 只能上下求索

  • 博客(998)
  • 资源 (3)
  • 收藏
  • 关注

转载 一个简易版的T4代码生成"框架"

一、T4模版的定义和代码文件的生成我们先来看看最终的代码生成需要定义那些东西,以及T4模版应该如何定义。对于这个框架来说,代码结构的生成是通过继承自我们自定义基类Template的自定义类型实现的。作为演示,我们定义了如下一个DemoTemplate。从代码可以看出,DemoTemplate仅仅用于生成一个空类,类型名称在构造函数中指定。 1: public class De

2017-04-08 13:45:33 1815 1

转载 一个简易版的T4代码生成"框架"

一、T4模版的定义和代码文件的生成我们先来看看最终的代码生成需要定义那些东西,以及T4模版应该如何定义。对于这个框架来说,代码结构的生成是通过继承自我们自定义基类Template的自定义类型实现的。作为演示,我们定义了如下一个DemoTemplate。从代码可以看出,DemoTemplate仅仅用于生成一个空类,类型名称在构造函数中指定。 1: public class De

2017-04-08 13:44:37 539

转载 大端法、小端法、网络字节序

关于字节序(大端法、小端法)的定义《UNXI网络编程》定义:术语“小端”和“大端”表示多字节值的哪一端(小端或大端)存储在该值的起始地址。小端存在起始地址,即是小端字节序;大端存在起始地址,即是大端字节序。 也可以说: 1.小端法(Little-Endian)就是低位字节排放在内存的低地址端即该值的起始地址,高位字节排放在内存的高地址端。 2.大端法(Big-Endia

2017-04-08 12:04:48 658

转载 二层-三层网络

学习网络,主要学习的就是协议,首先学习TCP/IP五层模型,了解TCP/IP每一层的协议,数据包和数据走向,然后开始学习思科二层交换机学起,vlan,vtp,stp,三层交换机,然后学习思科的路由器,大部分全部是协议,命令是固定的你只要记住就好了。 二层交换机就是传统意义上的交换,使用mac地址作为转发依据,建立起mac到端口的映射(cam表,类似于{00-13-20-B1-3A-97 p

2017-03-27 19:31:58 7812

转载 二层交换与MAC地址

根据国际标准化组织(ISO)提出的开放系统互连参考模型(OSI-RM),依据链路层(二层)进行数据帧转发的称为二层交换。相应地,仅支持二层交换的交换机称为二层交换机。        二层交换机工作在数据链路层,它对数据包的转发是建立在MAC地址的基础上的。二层交换机内部通常使用称为ASIC的芯片来实现对数据包的转发,由于是硬件转发,性能非常高。        MAC地址是二

2017-03-27 19:17:43 5436

转载 socket—TCP通信死锁问题

基础准备    首先需要明白数据传输的底层实现机制,在http://blog.csdn.net/ns_code/article/details/15813809这篇博客中有详细的介绍,在上面的博客中,我们提到了SendQ和RecvQ缓冲队列,这两个缓冲区的容量在具体实现时会受一定的限制,虽然它们使用的实际内存大小会动态地增长和收缩,但还是需要一个硬性的限制,以防止行为异常的程序所控制的单一

2017-03-20 19:35:46 5631

转载 socket—数据传输底层原理

底层数据结构    如果不理解套接字的具体实现所关联的数据结构和底层协议的工作细节,就很难抓住网络编程的精妙之处,对于TCP套接字来说,更是如此。套接字所关联的底层的数据结构集包含了特定Socket实例所关联的信息。比附,套接字结构除其他信息外还包含:    1、该套接字所关联的本地和远程互联网地址和端口号。    2、一个FIFO(First Im First Out)队

2017-03-20 19:34:29 4282 1

转载 版本管理技能 GIT

本文章讲纯干货的 git的使用方法和团队协作中的问题解决,尽量不讲废话,只要记住几个基本概念和几条常用命令,就已经使用git无障碍,绝不长篇大论从历史开讲,看了2个小时还是不知道怎么上手。git是一个分布式版本系统,最大好处之一是在本地工作完全不需要考虑远程库的存在,也就是有没有联网都可以正常工作。基本概念版本库只要在某个文件夹下做了git init的初始化操作,或

2017-03-16 23:56:58 473

转载 C# 中的Invoke和BeginInvoke机制

在Invoke或者BeginInvoke的使用中无一例外地使用了委托Delegate,至于委托的本质请参考我的另一随笔:对.net事件的看法。  一、为什么Control类提供了Invoke和BeginInvoke机制?关于这个问题的最主要的原因已经是dotnet程序员众所周知的,我在此费点笔墨再次记录到自己的日志,以便日后提醒一下自己。1、windows程序消息机制Windo

2017-03-16 23:27:52 1482

转载 Socket的accept函数解析

今天与同学争执一个话题:由于socket的accept函数在有客户端连接的时候产生了新的socket用于服务该客户端,那么,这个新的socket到底有没有占用一个新的端口?    讨论完后,才发现,自己虽然熟悉socket的编程套路,但是却并不是那么清楚socket的原理,今天就趁这个机会,把有关socket编程的几个疑问给搞清楚吧。    先给出一个典型的TCP/

2017-03-15 14:16:10 656

转载 C#中Socket关闭 Close、Dispose、Shutdown、Disconnect

An answer on StackOverflow made me think I have finally reached some glimpse of an understanding. Then I went testing for a bit and here's the summary of a newbie's view. Please correct me if I'm wr

2017-03-10 15:37:02 11630

转载 C#中的IDisposable接口

.net的GC机制有两个问题:首先GC并不能释放所有资源,它更不能释放非托管资源。其次,GC也不是实时的,所有GC存在不确定性。为了解决这个问题donet提供了析构函数public class TestClass : System.IDisposable{ //供程序员显式调用的Dispose方法 public void Dispose() {

2017-03-10 14:22:36 586

转载 WebRtc代码组织目录

目前,开发人员可访问http://sites.google.com/site/webrtc/页面获取WebRTC的源代码、规格说明和工具等。(国内网络可能不能登录,总共大小有80M, 如有需要可以留联系方式)在这还转载一篇对WebRTC source code(http://blog.csdn.net/cymlife/archive/2011/06/02/6460852.aspx) 组成部

2017-03-08 21:41:16 655

转载 MYSQL建表规约

【强制】表达是与否概念的字段,必须使用 is_xxx 的方式命名,数据类型是 unsigned tinyint( 1 表示是,0 表示否),此规则同样适用于 odps 建表。说明:任何字段如果为非负数,必须是 unsigned。举例:`is_star` tinyint unsigned DEFAULT NULL COMMENT '项目状态(1 表示是,0 表示否)',

2017-03-05 15:36:25 1041

转载 P2P通信原理与实现(C++)

1.简介  当今互联网到处存在着一些中间件(MIddleBoxes),如NAT和防火墙,导致两个(不在同一内网)中的客户端无法直接通信。这些问题即便是到了IPV6时代也会存在,因为即使不需要NAT,但还有其他中间件如防火墙阻挡了链接的建立。  当今部署的中间件大多都是在C/S架构上设计的,其中相对隐匿的客户机主动向周知的服务端(拥有静态IP地址和DNS名称)发起链接请求。大多数中间

2017-02-28 21:37:40 1540 1

转载 P2P通信

在传统的集中式网络中,都是一台服务器(集群)对外提供服务,所有客户端都依赖中央服务器进行与服务端的通信或者其他客户端的通信。如图   这样的通信方式,一个数据包从一个客户端发送到另一个客户端都要在服务端中进行中转,服务端承受的压力非常大,很容易因为线程问题而当机。 于是提出另一种通信方式:P2P通信(peer to peer) 对等通信。 即:在p2p的网络中,所有网络节点都是同等地

2017-02-28 21:33:29 1942

转载 C# 中通过CancellationTokenSource实现对超时任务的取消

我们在多线程中通常使用一个bool IsExit类似的代码来控制是否线程的运行与终止,其实使用CancellationTokenSource来进行控制更为好用,下面我们将介绍CancellationTokenSource相关用法。C# 使用 CancellationTokenSource 终止线程使用CancellationTokenSource对象需要与Task对象进行配合使用,

2017-02-26 21:40:11 3682

转载 EF的三种模式

先看下图:再看这张:那么明显开发模式是三种。即:DateBase First(数据库优先)、Model First(模型优先)和Code First(代码优先)。当然,如果把Code First模式的两种具体方式独立出来,那就是四种了。Code First(New DataBase) :在代码中定义类和映射关系并通过model生成数据库,使用迁移技术

2017-02-22 18:53:47 4929 1

转载 有关xml中的xmlns

"xmlns"是XHTML namespace的缩写,叫做"名字空间"声明。名字空间是什么作用呢?我的理解是:由于xml允许你自己定义自己的标识,你定义的标识和其他人定义的标识有可能相同,但表示不同的意义。当文件交换或者共享的时候就容易产生错误。为了避免这种错误发生,XML采用名字空间声明,允许你通过一个网址指向来识别你的标识。    比如在一个文档wood table中表

2017-02-22 18:26:54 1452

转载 [EF]让一个模型支持多数据库存储

EF对Sql Server的支持非常好,无论是Code First,还是 Model First 还是 Database First 都支持的很好,但是对非微软系数据库的支持就不那么友好了,现在唯一能保证的是对大部分数据库的 Database First 支持的很好。所以在这里,我们让 Entity framework 支持多数据库实现的思路就是基于 Database First 的。首先在各数据

2017-02-21 17:27:05 4031

转载 MySQL & Entity Framework Code First 数据表大小写的问题

以前都是使用Linux平台下的MySQL,现在为了调试方便,在开发机上安装了MySQL的Windows版本5.6.10,在使用Entity Framework Code First生成数据库对象时,发现所有的数据表的表名都变成了小写字符,而字段的名称是混合大小写的,这个问题在Linux平台上没有出现过,于是着手弄明白这是肿么一回事。经过网上搜索,找到这篇文章:Entity Framew

2017-02-21 17:23:38 3421

转载 VS2015 + EF6连接MYSQL

VS2015 + EF6连接MYSQLADO.NET Entity Framework 是微软以 ADO.NET 为基础所发展出来的对象关系对应 (O/R Mapping) 解决方案,不仅支持SQL Server,还支持MySQL、Oracle等数据库。接下来给大家讲解EF6+MYSQL具体的配置流程,以及配置过程中一些常见错误的解决方法。开发环境:Win10 + VS

2017-02-19 17:49:59 4648

翻译 EF框架从MySql生成模型时异常

无法生成模型:“System.Data.StrongTypingException: 表“TableDetails”中列“IsPrimaryKey”的值为 DBNull 引用:http://stackoverflow.com/questions/33575109/mysql-entity-the-value-for-column-isprimarykey-in-table-tabl

2017-02-19 17:46:33 3069

转载 Log4net入门使用

简介几乎所有的大型应用都会有自己的用于跟踪调试的API。因为一旦程序被部署以后,就不太可能再利用专门的调试工具了。然而一个管理员可能需要有一套强大的日志系统来诊断和修复配置上的问题。经验表明,日志记录往往是软件开发周期中的重要组成部分。它具有以下几个优点:它可以提供应用程序运行时的精确环境,可供开发人员尽快找到应用程序中的Bug;一旦在程序中加入了Log 输出代码,程序运行过程中就

2017-02-12 21:14:51 368

转载 从0到1打造直播 App

概要分享内容:互联网内容载体变迁历程,文字——图片/声音——视频——VR/AR——…….。从直播1.0秀场时代(YY),2.0游戏直播(斗鱼、虎牙、熊猫)到如今全民直播3.0泛生活娱乐时代(映客、花椒),国外直播app(Meerkat 、Periscope),随着VA/AR/MR提出的沉浸式视听体验,直播4.0时代很快就能到来。在这个全民娱乐的时代,直播已经火得不要不要的,

2017-02-12 19:52:51 848

转载 .NET开源压缩组件介绍与入门

1.前言作为吉日嘎拉权限管理系统最早的一批学习版用户,学了不少东西,在群里面也结识了很多朋友,更重要的是闲余时间,大家都发布很多可靠的外包工作。这次也是由于吉日嘎拉发布了一个有关“压缩文件损坏检测”的外包任务,最早在2009年用C#很简单的使用过压缩组件,这次有了这个需求,才所以才深入研究一番,顺便有了这篇博客。在日常项目开发过程中,操作Zip或者RAR压缩文件也是一件比较常见的事

2017-02-09 22:41:56 450

转载 使用C#压缩解压文件

为了便于文件在网络中的传输和保存,通常将文件进行压缩操作,常用的压缩格式有rar、zip和7z,本文将介绍在C#中如何对这几种类型的文件进行压缩和解压,并提供一些在C#中解压缩文件的开源库。在C#.NET中压缩解压rar文件rar格式是一种具有专利文件的压缩格式,是一种商业压缩格式,不开源,对解码算法是公开的,但压缩算法是私有的,需要付费,如果需要在您的商业软件中使用rar格式进行

2017-02-09 22:36:29 1931 1

转载 SVN trunk(主线) branch(分支) tag(标记) 用法详解和详细操作步骤

使用场景:假如你的项目(这里指的是手机客户端项目)的某个版本(例如1.0版本)已经完成开发、测试并已经上线了,接下来接到新的需求,新需求的开发需要修改多个文件中的代码,当需求已经开始开发一段时间的时候,突然接到用户或测试人员的反馈,项目中有个重大bug需要紧急修复,并且要求bug修复后要立即上线;此时应该怎么修复bug呢?是在当前已经开发新需求的基础上进行修复吗?答案是否定的,原因是:如果是在

2017-02-09 22:29:26 801

转载 初识NuGet - 概念, 安装和使用

1. NuGet是什么?NuGet is a Visual Studio 2010 extension that makes it easy to add, remove, and update libraries and tools in Visual Studio projects that use the .NET Framework. This topic lists docu

2017-02-09 22:13:07 657

转载 技术人员的心态转变

作者:锦旺链接:https://zhuanlan.zhihu.com/p/19564880来源:知乎著作权归作者所有。商业转载请联系作者获得授权,非商业转载请注明出处。如果说掌握一门赖以生计的技术是技术人员要学会的第一课的话,那么,我觉得,技术人员要真正学会的第二课,不是技术,而是业务、交流与协作,学会关心其他工作伙伴的工作情况和进展。为什么这么说呢?因为技术人员太容易

2017-02-03 11:08:21 640

转载 流媒体协议—HLS

HLS概述HLS(Http Live Streaming)是APPLE公司提出的基于HTTP的流媒体传输协议。它的工作原理就是把整个ts流分成一个个ts小文件供播放器按顺序下载播放。HLS作为当前媒体分发传输最为重要的几大协议之一,网络上已有大量深入分析文章,苹果官方文档也对协议应用做了完善的定义。故本篇文章仅简单介绍HLS的组成以及抓包对照分析。另外,完整的HLS系统

2017-01-25 14:56:40 3160

转载 流媒体协议—RTMP

认识RTMPRTMP协议是由Adobe提出的一个应用层的协议,主要用来解决流媒体数据传输的问题,是目前低延时直播应用最广泛的协议。在我们实际工作中,我们对RTMP应该再熟悉不过,因它是几乎所有编码器标准输出协议,是PC机打开浏览器就能播放(一般浏览器默认有Flash),也是所有CDN支持的最好的直播分发协议。所以,即便RTMP协议较为复杂,也有不少缺陷,但较长的一段时间内,还不

2017-01-25 14:48:37 1604 1

转载 流媒体协议—FLV

认识FLV上一篇讲了HTTP在流媒体中的应用,接下来我们先把基于HTTP的HTTP-FLV和HLS两种直播中应用非常广泛的协议提一下。先看看HTTP-FLV长成什么样子:http://ip:port/live/livestream.flv,协议头是http,另外”.flv”这个尾巴是它最明显的特征。在流媒体尤其是直播应用中,为什么我们要如此重视HTTP-FLV呢

2017-01-25 13:51:36 4052

转载 流媒体协议—HTTP

http://www.wtoutiao.com/p/5c4KKEX.html传输协议作为流媒体系统中最重要组成部分之一,在流媒体应用中扮演着关键性作用。本章着重对我们目前业务中常用的基于HTTP的流协议(如HLS、HTTP-FLV)、RTMP等主要流媒体协议以及相关的Websocket 、URL进行详细介绍。在流媒体相关工作中,我们经常会听到有人问起,这么多流媒体协议我

2017-01-25 11:29:02 7599

转载 NET 4.0 Task用法

System.Threading.Tasks的作用: Tasks命名空间下的类试图使用任务的概念来解决线程处理的复杂问题。任务(Task)包含一个操作,以及依赖哪个任务的完成才能开始。 测试用例: 假设有任务A,B,C,D。其中C依赖A和B的完成,而D依赖A的完成。代码该怎么写呢? 代码: 1 TaskFactory factory = new TaskFactor

2017-01-24 17:51:24 3599

转载 服务器热更新(当个文件更新)

上一篇文章我介绍了如果动态加载dll文件来更新程序可是在使用过程中,也许有很多会发现,动态加载dll其实不方便,应为需要预先编译代码为dll文件。便利性不是很高。那么有么有办法能做到动态实时更新呢????官方提供了这两个对象,动态编译源文件。 提供对 C# 代码生成器和代码编译器的实例的访问。 CSharpCodeProvider提供一下方法加载源文件,// 基

2017-01-23 16:12:35 4734 1

转载 服务器热更新(动态加载DLL)

大家可能对游戏服务器的运行不太理解或者说不太清楚一些机制。但是大家一定会明白一点,当程序在运行的时候出现一些bug,必须及时更新,但是不能重启程序的情况下。这里牵涉到一个问题。比如说在游戏里面,,如果一旦开服,错非完全致命性bug,否则是不能频繁重启服务器程序的,你重启一次就可能流失一部分玩家。那么就牵涉到程序热更新修复bug功能。今天就来扒一扒热更新的事情。

2017-01-23 16:10:38 8866 3

转载 ThreadPool 线程池

相关概念:    线程池可以看做容纳线程的容器;    一个应用程序最多只能有一个线程池;    ThreadPool静态类通过QueueUserWorkItem()方法将工作函数排入线程池;    每排入一个工作函数,就相当于请求创建一个线程; 线程池的作用:线程池是为突然大量爆发的线程设计的,通过有限的几个固定线程为大量的操作服务,减少了

2017-01-22 14:38:07 539

原创 Windows关闭错误报告弹窗

项目中需要第三方一个后台的第三方应用, 这就需要守护进程, 保证他一直在运行, 然而应用并不稳定.在Win7,Win8,Win10中某些程序出错会出现Windows错误报告, 并且暂停应用不会退出, 这时候进程守护就会失效.所以需要把错误报告弹窗关闭, 让程序发生错误后直接退出.  这样才能使守护进程生效.一:注册表关闭弹窗(这个方法即可, 另一个可以顺便)1、使用

2017-01-20 11:25:40 4117

转载 大端小端格式详解

1. 什么是大端,什么是小端:所谓的大端模式,是指数据的低位保存在内存的高地址中,而数据的高位,保存在内存的低地址中;所谓的小端模式,是指数据的低位保存在内存的低地址中,而数据的高位保存在内存的高地址中。2.为什么会有大小端:为什么会有大小端模式之分呢?这是因为在计算机系统中,我们是以字节为单位的,每个地址单元都对应着一个字节,一个字节为8bit。但是在C语言中除了

2017-01-19 14:45:04 645

敏捷软件开发 中文版

agile software development

2013-09-27

精通Direct3D图形与动画程序设计

Direct3D 图形与动画 精通,属于入门级别的吧 ,别人推荐的,是一本不错的书

2012-06-23

TINDEM线性内插不确定性模型

TINDEM线性内插不确定性的随机过程模型

2010-06-21

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除