自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+

大东

It相关

  • 博客(35)
  • 收藏
  • 关注

原创 c++编译错误

1,线程编译g++ test.cpp  -o test  -lpthread编译c++程序时报错报错信息:错误:#error This file requires compiler and library support for the ISO C++ 2011 standard. This support is currently experimental, and must b...

2018-07-31 14:38:50 1543

转载 pthread_join和pthread_detach详解

转载自:http://www.hack6.com/html/bc/C/20141106/52232.html 在任何一个时间点上,线程是可结合的(joinable)或者是分离的(detached)。一个可结合的线程能够被其他线程收回其资源和杀死。在被其他线程回收之前,它的存储器资源(例如栈)是不释放的。相反,一个分离的线程是不能被其他线程回收或杀死的,它的存储器资源在它终止时由系统自动释放...

2018-07-31 14:06:27 147

转载 Linux线程pthread_exit 和 pthread_join

pthread_exit(void *ptr) 函数使线程退出,并返回一个空指针类型的值。pthread_join(pthread_t tid,void **rtval)调用此函数的进程/线程等id为tid的线程返回或被终止,并从它那里获得返回值。注意,退出函数返回的是一个空指针类型,接受函数也必须用一个指针来接收。但是函数给出的参数是接收指针的地址,即,接收到的指针值写入给出的地址处的指...

2018-07-31 09:26:10 4264

转载 linux 线程创建 pthread_create函数 获取线程id

函数原型:#include<pthread.h>int  pthread_create(pthread_t*thread,pthread_attr_t   *attr,void * (*start_routine)(void *arg), void *arg); 参数  第一个参数为指向线程标识符的指针。  第二个参数用来设置线程属性。  第三个参数是线...

2018-07-31 09:19:46 4613

原创 c++获取线程id,编译出错:test.cpp:16:20: 错误:‘gettid’在此作用域中尚未声明

为了测试获取线程id,所以用#include <unistd.h>pid_t tid = gettid(); cout << "now pid is:" << tid << endl; 但是每次编译都会报错:[root@localhost cpp]# g++ test.cpp -o test  -lpthreadtest.cpp: ...

2018-07-30 23:47:43 2317

原创 c++程序编译出错:test.cpp:(.text+0x64):对‘pthread_create’未定义的引用,collect2: 错误:ld 返回 1

[root@localhost cpp]# g++ test.cpp -o test /tmp/ccss6u2f.o:在函数‘main’中:test.cpp:(.text+0x64):对‘pthread_create’未定义的引用collect2: 错误:ld 返回 1原因:因为有pthread_create函数,这个类用到posix实现的线程了。解决办法:g++ -o tes...

2018-07-30 23:13:00 4809 1

转载 关于游戏服务端架构的整理

一个大型的网落游戏服务器应该包含几个模块:网络通讯,业务逻辑,数据存储,守护监控(不是必须),其中业务逻辑可能根据具体需要,又划分为好几个子模块。这里说的模块可以指一个进程,或者一个线程方式存在,本质上就是一些类的封装。 对于服务器的并发性,要么采用单进程多线程,要么采用多进程单线程的方式,说说两种方式的优缺点: 一、单进程多线程的服务器设计模式,只有一个进程,但一个进程包好多...

2018-07-30 11:53:27 1077

转载 C/C++函数指针与指针函数等区别

1)函数指针与指针函数(1)函数指针一种特殊的指针,它指向函数的入口;/** 定义一个函数指针p,只能指向返回值为int,形参为两个int的函数*/int (*p)(int,int);1 2 3 4/* * 求最大值 * 返回值是int类型,返回两个整数中较大的一个 */ int max(int a, int b) { return a...

2018-07-30 11:13:07 563

原创 Task,async,await相关的问题总结1

第一种情况,TestAsync函数没有Task,async,awaitclass Program    {        static void Main(string[] args)        {            Console.WriteLine("我是主线程,线程ID:{0}", Thread.CurrentThread.ManagedThreadId);      ...

2018-07-27 17:25:54 2916

原创 acotor模型理解3-actor消息的发送器ActorMessageSender

开始的地方:网关服务器OuterMessageDispatcher,判断是iActorMessage消息,这里处理actor消息。case IActorMessage iActorMessage: // gate session收到actor消息直接转发给actor自己去处理                {                    long unitId = sessi...

2018-07-27 15:00:07 512

原创 acotor模型理解2-客户端向服务器发送actor消息

actor消息:[Message(OuterOpcode.Actor_Test)]    [ProtoContract]    public partial class Actor_Test: IActorMessage    {        [ProtoMember(90, IsRequired = true)]        public int RpcId { get; se...

2018-07-26 19:30:40 406

原创 acotor模型理解1-服务器内部actor消息

one,actor模型解释的第一句话:聚沙成塔One ant is no ant, one actor is no actor.光有一个actor是不够的,多个actors才能组成系统。在actor模型里每个actor都有地址,所以它们才能够相互发送消息。解释:public partial class Actor_CreateUnits: IActorMessage    {...

2018-07-25 11:35:55 838

转载 利用git从github上拉取项目

(一)准备工作(1)安装git,下载地址是git官网:https://git-scm.com/点击打开链接(二)拉取项目的步骤1、新建文件夹,最好为英文名project2、进入文件夹,空白处右键,选择gitbash here,键入git init会生成.git文件(如果没有,或许被隐藏了,无关紧要)3、配置本地仓库的账号邮箱git$ git config --global ...

2018-07-23 17:23:19 87681 4

转载 Task类使用总结

原创作品,允许转载,转载时请务必以超链接形式标明文章 原始出处 、作者信息和本声明。否则将追究法律责任。http://cnn237111.blog.51cto.com/2359144/1102476由于Framework 4.0和Framework 4.5对Task类稍微有些不同,此处声明以下代码都是基于Framework 4.5Task类和Task<TResult>类,后者是...

2018-07-23 13:24:34 798

转载 c#—— Task.FromResult 的使用

Task.FromResult用来创建一个带返回值的、已完成的Task。 场景一:以同步的方式实现一个异步接口方法 比如有一个接口包含异步方法。  interface IMyInterface{ Task<int> DoSthAsync();} 现在,需要以同步的方式实现该接口方法DoSthAsync,但要返回异步的结果...

2018-07-23 13:22:49 1172

转载 c#—— Task.FromResult 的使用

Task.FromResult用来创建一个带返回值的、已完成的Task。 场景一:以同步的方式实现一个异步接口方法 比如有一个接口包含异步方法。 interface IMyInterface{ Task<int> DoSthAsync();} 现在,需要以同步的方式实现该接口方法DoSthAsync,但要返回异步的结果。这正是T...

2018-07-20 14:15:30 385

转载 C#中 Thread,Task,Async/Await,IAsyncResult 的那些事儿!

说起异步,Thread,Task,async/await,IAsyncResult 这些东西肯定是绕不开的,今天就来依次聊聊他们1.线程(Thread)多线程的意义在于一个应用程序中,有多个执行部分可以同时执行;对于比较耗时的操作(例如io,数据库操作),或者等待响应(如WCF通信)的操作,可以单独开启后台线程来执行,这样主线程就不会阻塞,可以继续往下执行;等到后台线程执行完毕,再通知主线...

2018-07-20 11:52:24 172

原创 mongodb基本数据库操作

win+R打开数据库操作show dbs; #查看全部数据库use Landlords #Landlords 是数据库名称show collections; #显示当前数据库中的集合(类似关系数据库中的表)db.UserInfo.find();      #UserInfo是collections的名称,也就是表的名...

2018-07-20 11:15:23 151

转载 MongoDB--在windows下的安装过程及基本配置

这几天在做一个简单的后台博客系统,数据库用到了 MongoDB ,虽说官方的文档比较全,但是对于我一个英语一般的人来说,或多或少在配置的时候出现了一些问题,总结了一下在安装及创建服务的过程MongoDB 下载首先当然是下载 MongoDB 了,这里是官网下载地址:https://www.mongodb.com/download-center?jmp=nav#community点击进...

2018-07-20 11:02:23 151

转载 Unity3D部署导出的Webgl项目同时支持手机

Unity3D部署导出的Webgl项目同时支持手机Foldcc 2017-8-18Unity在抛弃掉flash后支持导出全新的H5项目WegGl,但是目前Unity3D导出的Webgl不支持在手机上使用,原因是手机上的硬件性能相对来说要弱而且很多浏览器不支持Webgl,因此在手机上玩Webgl游戏可能会对玩家不友好,但是随着手机发展,目前手机的硬件性能都大大提高,同时很多手机浏览器也...

2018-07-18 15:25:38 9671 2

转载 c#中new()约束符

例:  public class BaseClass<T> where T : new(){ public T SomeMethod(){return new T();}}第一:where只用于泛型第二:where T : new()的意思是,这个T必须有public构造函数,如果new BaseClass<T>()的时...

2018-07-18 10:24:12 930

原创 TaskCompletionSource使用心得

首先,贴代码class Program    {        static void Main()        {            TaskCompletionSource<int> tcs1 = new TaskCompletionSource<int>();            Task<int> t1 = tcs1.Task;...

2018-07-17 13:12:58 6500

原创 ?.C#运算符

这是 C# 6.0 引入的新特性,不为null时执行后面的操作,详见 C# 6.0那些事

2018-07-17 11:38:27 183

原创 etserver 的HttpComponent 测试

1 首先 打开Program类取消注释,以下行Game.Scene.AddComponent<HttpComponent>();2执行,发现以下错误3 cmd ,以管理员身份运行,执行:netsh http add urlacl url=http://127.0.0.1:8080/ user=everyone备注:如果输入错误,就删除注册项,删除方法如下:netsh http dele...

2018-07-13 15:24:04 798

转载 使用netsh命令导致VS调试无法连接配置服务器

在VS调试站点,默认使用IISExpress,locall+端口,为了使用IP地址、多域名调试,找到IISExpress下的applicationhost.config,在目标站点下增加类似行: <binding protocol="http" bindingInformation="*:51000:192.168.1.10" />变成 <binding protocol=...

2018-07-13 14:10:02 814

转载 RPC理解

RPC是什么?科普一下RPC概念及分类RPC全称为Remote Procedure Call,翻译过来为“远程过程调用”。目前,主流的平台中都支持各种远程调用技术,以满足分布式系统架构中不同的系统之间的远程通信和相互调用。远程调用的应用场景极其广泛,实现的方式也各式各样。 从通信协议的层面,大致可以分为:基于HTTP协议的(例如基于文本的SOAP(XML)、Rest(JSON),基于二进制Hess...

2018-07-13 12:01:07 209

转载 10 分钟了解 Actor 模型

过去十几年CPU一直遵循着摩尔定律发展,单核频率越来越快,但是最近这几年,摩尔定律已然失效,CPU的工艺制程和发热稳定性之间难以取舍,取而代之的策略则是增加核心数量,目前家用电脑四核已经非常常见,服务器更是达到了32核64线程。为了有效地利用多核CPU,我们在代码层面就应该考虑到并发性。十几年的痛苦开发经历告诉我们,threads并不是获取并发性的好方法,往往会带来难以查找的bug,但是不用害怕,...

2018-07-13 11:36:43 1370

转载 Task类与async/await

Task 类Task类是.NET 4.0之后提供的异步操作抽象,完整路径为System.Threading.Tasks.Task。Task类用于表示无返回值的异步操作,对于带有返回值的异步操作应使用Task类的子类Task<TResult>。 Task类创建的任务会加入线程池中。Task/Task<TResult>类的主要构造函数如下:// 接收Action类型作为异步操作...

2018-07-13 11:04:32 2546

转载 C#基础系列——异步编程初探:async和await

前言:前面有篇从应用层面上面介绍了下多线程的几种用法,有博友就说到了async, await等新语法。确实,没有异步的多线程是单调的、乏味的,async和await是出现在C#5.0之后,它的出现给了异步并行变成带来了很大的方便。异步编程涉及到的东西还是比较多,本篇还是先介绍下async和await的原理及简单实现。C#基础系列目录:C#基础系列——Linq to Xml读写xmlC#基础系列——...

2018-07-12 17:59:44 202

转载 vm虚拟机centos7桥接模式连接外网

1.vm设置2.ifcfg-ens33设置cd /etc/sysconfig/network-scriptsvim ifcfg-ens333.ping www.baidu.com

2018-07-12 16:00:35 24388 9

转载 如何在CentOS 7下开放8080端口

因为centos7已经开始使用firewall作为防火墙,而不是iptables了,所以,开放8080端口就和以往不一样了,下面我们就一起学习一下如何开放8080端口吧!工具/原料CentOS 7方法/步骤连接centos7服务器;我们可以输入命令查看防火墙的状态;firewall-cmd --state  ;如果上一步处于关闭状态,输入命令:systemctl start firewalld.s...

2018-07-10 15:15:17 4628

转载 解决VM中安装CentOS 7.4后无法联网的问题

我在VM中安装了一个 CentOS 7.4 系统,但是无法联网。无法联网的明显表现会有:  用yum安装软件提示 cannot find a valid baseurl for repo:base/7/x86_64  ping host会提示:未知的名称或服务解决方法:1、进入目录/etc/sysconfig/network-scripts/cd /etc/sysconfig/network-sc...

2018-07-10 13:17:40 327

转载 一张图弄明白开源协议-GPL、BSD、MIT、Mozilla、Apache和LGPL 之间的区别

导读在开源软件中经常看到各种协议说明,GPL、BSD、MIT、Mozilla、Apache和LGPL。 - 这些协议之间的有什么区别 - 如何选择合适的开源协议 请看下文,特作记录一篇,以供后续查看参考:阮一峰的网络日志...

2018-07-10 11:42:50 3620

转载 开源的许可证GPL、LGPL、BSD、Apache 2.0的通俗解释

你对开源有多少了解呢?如果你是软件开发者,要开源软件,不单单是开放源代码就可以了,选择一种许可证很重要,一个许可证之于软件就相当于价值观之于普通人,代表了这个软件的基本品性。一个错误的许可证选择可能会直接导致整个项目的失 败,XFree86就是一个好例子。各种开源的许可证主要的限制还是在redistribution(发布),所以个人/商业公司开发的软件包含了GPL的代码,只要你不发布,是可以任意使...

2018-07-04 16:55:21 540

原创 c#特性简述使用

一自定义特性我们主要讲一下如何自定义特性,定义的方式和普通的类定义方式一致,但是,第一:需要继承标准特性类第二:需要添加标准特性,用来限制特性的使用范围等第三:必须要定义构造函数,即使是空的第四:当有参构造时,必须要有空构造如下:[AttributeUsage(AttributeTargets.All, AllowMultiple = true, Inherited = true)]    pub...

2018-07-02 13:35:28 217

空空如也

空空如也

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

TA关注的人

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