摘要: 1 python扩展模块的组成 在python中,对于一些和系统相关的模块或者对性能要求很高的模块,通常会把这个模块C化。扩展模块中主要包含下面几个部分: init函数,函数名为:init+模块名,这个函数负责初始化模块,包括设置模块中的方法、对象和其它相关数据的初始化。这个函数是必须的,在脚本中第 阅读全文
posted @ 2017-02-07 17:56 在于思考 阅读(9982) 评论(0) 推荐(2) 编辑
摘要: 工作后好久没上博客园了,虽然不是很忙,但也没学生时代闲了。今天上博客园,发现好多的文章都是年终总结,想想是不是自己也应该总结下,不过现在还没想好,等想好了再写吧。今天写写自己在工作后用到的技术干货,争取以后多上博客园写写总结吧,真是怀念学生时代啊!!! 背景 项目组开发的游戏客户端使用的脚本是pyt 阅读全文
posted @ 2017-01-04 19:23 在于思考 阅读(2385) 评论(0) 推荐(4) 编辑
摘要: 在OpenGL中任何事物都在3D空间中,但是屏幕和窗口是一个2D像素阵列,所以OpenGL的大部分工作都是关于如何把3D坐标转变为适应你屏幕的2D像素。3D坐标转为2D坐标的处理过程是由OpenGL的图形渲染管线完成的。图像渲染管线可以被划分为两个主要部分:第一个部分把你的3D坐标转换为2D坐标,第 阅读全文
posted @ 2016-04-18 21:43 在于思考 阅读(4321) 评论(0) 推荐(0) 编辑
摘要: 学python的人都知道,python中一切皆是对象,如class生成的对象是对象,class本身也是对象,int是对象,str是对象,dict是对象...。所以,我很好奇,python是怎样实现这些对象的?带着这份好奇,我决定去看看python的源码,毕竟源码才是满足自己好奇心最直接的方法。 在o 阅读全文
posted @ 2016-04-17 21:38 在于思考 阅读(1587) 评论(0) 推荐(3) 编辑
摘要: 虽然python开发效率很高,但作为脚本语言,其性能不高,所以为了兼顾开发效率和性能,通常把性能要求高的模块用c或c++来实现或者在c或c++中运行python脚本来处理逻辑,前者通常是python中一些模块的实现方式,后者服务端程序(实现业务扩展或是Plugin功能)和游戏开发(脚本只处理逻辑)中 阅读全文
posted @ 2016-04-15 19:51 在于思考 阅读(30957) 评论(1) 推荐(3) 编辑
摘要: 自从工作后,总是或多或少的会接触到客户端3d图形渲染,正好自己对于3d图形的渲染也很感兴趣,所以最近打算从学习OpenGL的图形API出发,进而了解3d图形的渲染技术。到网上查了一些资料,OpenGL的入门学习通常是用《OpenGL开发指南》和《OpenGL超级宝典》这两本书。博主最近在看《Open 阅读全文
posted @ 2016-04-10 21:52 在于思考 阅读(2761) 评论(0) 推荐(0) 编辑
摘要: 1、编译python遇到下面的编码问题: SyntaxError: Non-ASCII character '\xe9' in file E:\projects\learn.py on line 3, but no encoding declared; see http://python.org/d 阅读全文
posted @ 2016-04-03 11:55 在于思考 阅读(719) 评论(0) 推荐(0) 编辑
摘要: VS2012, 创建或打开C++浏览数据库文件*.sdf时发生错误。 IntelliSense 和浏览信息将不能用于C++项目。 请确保已安装 Microsoft SQL Server Compact 4.0, 并且没有其他应用程序正在访问文件。 如果问题仍然存在, 请删除文件并重新打开解决方案。 阅读全文
posted @ 2016-04-03 10:30 在于思考 阅读(4390) 评论(0) 推荐(0) 编辑
摘要: 公司引擎是用cmake根据目标平台来构建工程的,刚接触的时候深深体会到cmake的方便:如果目标平台是windows,它可以帮你自动构建出vs工程;如果是安卓,自动构建出eclipse工程,如果是IOS,自动构建出xcode工程。想想以前用vs建工程的时候,如果要引入第三方库,必须要手动配置第三方库 阅读全文
posted @ 2016-04-02 21:11 在于思考 阅读(36232) 评论(1) 推荐(13) 编辑
摘要: 由于项目组现在用的rpc是基于google protobuf rpc协议实现的,所以花了点时间了解下protobuf rpc。rpc对于做分布式系统的人来说肯定不陌生,对于rpc不了解的童鞋可以自行google,这里只是做个简单的介绍。rpc的主要功能是让分布式系统的实现更为简单,为提供强大的远程调 阅读全文
posted @ 2016-03-05 22:19 在于思考 阅读(13804) 评论(1) 推荐(2) 编辑
摘要: 在网上找了很多方法都失败了,原因是大多数方法都是用mbr方式安装的,如grub4dos,easybcd。以至于连自己都怀疑win8能不能用硬盘安装,差点就去买个u盘来安装了,就在打算放弃的时候在ubuntu论坛里看到了一个置顶的帖子,对win8硬盘安装讲的很详细,终于按照他的方法把ubuntu装上去... 阅读全文
posted @ 2015-01-27 20:53 在于思考 阅读(2785) 评论(0) 推荐(0) 编辑
摘要: vmware上网设置vmware虚拟机上网设置 我的一些心得,如下: 如何使vmware虚拟机中的操作系统能够上网? 第一种情况: 主机使用PPPOE拨号上网 方法一:NAT方式 1、先关闭虚拟机中的操作系统,回到虚拟机主界面 双击主界面右上方的的“Ethernet”,弹出“Network Adap... 阅读全文
posted @ 2015-01-21 20:02 在于思考 阅读(324) 评论(0) 推荐(0) 编辑
摘要: 由于需要将MFC程序在其它电脑上运行,所以需要将动态链接的MFC改成静态链接,本以为很简单,没想到链接的时候出现下面的链接错误:uafxcw.lib(afxmem.obj) : error LNK2005: "void * __cdecl operator new(unsigned int)" ... 阅读全文
posted @ 2014-10-17 10:28 在于思考 阅读(1901) 评论(0) 推荐(0) 编辑
摘要: 一面一面是第一天的早上九点,记得那天很早就起床了,和同学一起去的酒店,本以为我们已经算来的早的了,到了酒店才发现整个大会议厅都是人。然后就是排队签到,没等几分钟就叫到我去一面了...一面面试官貌似一直在等我,可能我是他第一个面试的。我一进去就叫我把简历给他,然后让我自我介绍了下,不到一分钟就介绍完了... 阅读全文
posted @ 2014-10-13 10:53 在于思考 阅读(6092) 评论(26) 推荐(10) 编辑
摘要: 链表在 Redis 中的应用非常广泛, 比如列表键的底层实现之一就是链表: 当一个列表键包含了数量比较多的元素, 又或者列表中包含的元素都是比较长的字符串时, Redis 就会使用链表作为列表键的底层实现。除了链表键之外, 发布与订阅、慢查询、监视器等功能也用到了链表, Redis 服务器本身还使用... 阅读全文
posted @ 2014-09-29 16:35 在于思考 阅读(2143) 评论(0) 推荐(1) 编辑
摘要: Redis 没有直接使用 C 语言传统的字符串表示(以空字符结尾的字符数组,以下简称 C 字符串), 而是自己构建了一种名为简单动态字符串(simple dynamic string,sds)的抽象类型, 并将sds用作 Redis 的默认字符串表示。sds简单动态字符串数据结构如下:1 typed... 阅读全文
posted @ 2014-09-23 11:24 在于思考 阅读(2417) 评论(0) 推荐(0) 编辑
摘要: 习惯了vim黑色背景的程序猿们想必用eclipse时会倍感的不适应吧,不过没关系,因为eclipse的皮肤是可以自己定制的! 下面是我电脑上的eclipse界面,看到这个是不是找回了vim的感觉呢? 怎样改变eclipse的皮肤呢?其实很简单,国外程序员自己打造的Eclipse黑色主题皮肤,配合ec 阅读全文
posted @ 2014-09-10 17:25 在于思考 阅读(5859) 评论(6) 推荐(3) 编辑
摘要: 我们团队用maven来管理项目需要的库文件,其实以前都没听过maven,第一次接触这个,师兄要我直接去装下这个,开始以为还挺简单的,没想到中间遇到了一些小麻烦,现在把我成功安装maven的过程分享下,希望后来者能少走弯路。 首先是下载maven,这个简单,直接在maven的官网上下就可以了,官方网站 阅读全文
posted @ 2014-06-28 13:12 在于思考 阅读(1739) 评论(2) 推荐(0) 编辑
摘要: 在nginx启动过程中,模块的初始化是整个启动过程中的重要部分,而且了解了模块初始化的过程对应后面具体分析各个模块会有事半功倍的效果。在我看来,分析源码来了解模块的初始化是最直接不过的了,所以下面主要通过结合源码来分析模块的初始化过程。 稍微了解nginx的人都知道nginx是高度模块化的,各... 阅读全文
posted @ 2014-06-20 09:46 在于思考 阅读(3824) 评论(0) 推荐(3) 编辑
摘要: 看了下nginx的官方文档,其中nginx如何处理一个请求讲解的很好,现在贴出来分享下。Nginx首先选定由哪一个虚拟主机来处理请求。让我们从一个简单的配置(其中全部3个虚拟主机都在端口*:80上监听)开始: 1 server { 2 listen 80; 3 serv... 阅读全文
posted @ 2014-06-17 09:17 在于思考 阅读(4038) 评论(3) 推荐(1) 编辑
摘要: 资料 偶然发现了google的测试框架gtest,马上试了下,效果挺不错,特别是对于写c++的人来说,方便很多。以前自己写c++的模块,通常是写好了模块后再另外定义些函数,然后在函数里面写测试用例来测试模块,如果测试点比较多,光是定义测试函数都要花费不少时间。gtest相当于大大节省了这个过程,用起 阅读全文
posted @ 2017-02-23 20:01 在于思考 阅读(2109) 评论(0) 推荐(1) 编辑