![](https://img-blog.csdnimg.cn/20190927151053287.png?x-oss-process=image/resize,m_fixed,h_224,w_224)
c/c++
C
.net core game
致力于.net core全栈游戏服务器开发
展开
-
c++编译器调用C函数,必须加 extern “C“ {}(不要变名字) 不然报错(原因: c++有函数重载机制导致的命名改变导致函数找不到)
1)C的第三方库头文件2)报错如下3)解决:引入的C的头文件用extern "C" 括起来即可原创 2019-07-31 01:02:53 · 207 阅读 · 0 评论 -
深刻理解websocket为何是基于tcp的协议(migic是固定值!!!)
1)ws客户端其实是能直接连接tcp服务器的但是可见连接后,直接error-->close了,这是因为没有握手协议的支持,所以失败,2)下面添加了握手协议后,tcp服务器就可以升级为ws服务器3)client.html<!DOCTYPE html><html><head> <title>skynet WebSo...原创 2019-07-20 13:46:41 · 1735 阅读 · 0 评论 -
理解epoll是如何派发读写事件的
Q:老师,在学习libuv Epoll我有点不明白的是: 多个客户端 发过来数据,其实就是客户端提交很多个读写请求,服务器用epoll来管理客户端的socket读写请求,读写数据完成后,操作系统内核通知服务器注册好的回调函数拿数据 我疑问是:操作系统是如何知道读写事件完成了?Q:应该是取决于对读写缓冲区吧,客户端一直发,发完后,由于网络协议栈,会放缓冲区, 缓...原创 2019-07-18 10:33:55 · 828 阅读 · 0 评论 -
思考: 到底什么是高并发?
1)如何设计如何扩展2)什么是高并发 (1)任务:完成某个功能的一个一个目标任务,服务器程序也是不例外的。 (2)CPU核心:完成具体任务的,是CPU核心 + 周围的外设(读写磁盘IO、网络IO) + 内存 (3)每个CPU核心可以同时调度不同的任务,如:I7双核:同时调度2个可以调度的任务; 提升单个核心主频(摩尔定律) + CPU的数目(不同核心处理不同的任务),从而处理性能; 服务器专门用的机器:32多个核心,同时调度32个不同的任务 “同时...原创 2020-09-26 15:08:42 · 740 阅读 · 0 评论 -
visual studio 2015开发c语言项目目录规划
这样,将编译相关的放到相关的平台下面。代码相关的全部放到src下面即可。原创 2021-08-21 10:44:05 · 111 阅读 · 0 评论 -
巧用extern关键字: 在别人的模块中引入自己的实现时,可以声明一个extern函数指明这个已经实现过了
1.在做多语言时,在Language.cpp中std::string GetTextInternational( const std::string& text ){ if (text == "") { return ""; } return Language::getInstance()->getTextInternational( text )原创 2016-11-17 12:26:30 · 379 阅读 · 0 评论 -
centos7下c/c++环境搭建 1.安装vscode 2.下载插件 3.调试 4.直接运行代码ctrl+F5 5.gcc编译多个文件及其task.json配置 及其 C++ 用g++编译
准备工作sudo rpm --import https://packages.microsoft.com/keys/microsoft.ascsudo sh -c 'echo -e "[code]\nname=Visual Studio Code\nbaseurl=https://packages.microsoft.com/yumrepos/vscode\nenabled=1\ngpgcheck=1\ngpgkey=https://packages.microsoft.com/keys/micr原创 2021-04-12 01:13:42 · 1389 阅读 · 0 评论