自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(111)
  • 资源 (4)
  • 收藏
  • 关注

转载 protobuf repeated类型的使用

protobuf是Google开发的一个序列化框架,类似XML,JSON,基于二进制,比传统的XML表示同样一段内容要短小得多。通过protobuf,可以很轻松的调用相关方法来完成业务数据的序列化与反序列化。protobuf repeated类型相当于std的vector,可以用来存放N个相同类型的内容,文章将简单介绍protobuf repeated的使用。首先定义一个protobuf结

2015-12-08 15:38:29 2693

转载 玩转Protocol Buffers

Protocol Buffers1. 人人都爱Protocol Buffers1.1 Protocol Buffers(PB)是什么?Protocol buffers are Google’s language-neutral, platform-neutral, extensible mechanism for serial

2015-12-08 14:02:59 1960

转载 PowerDesigner之PDM(物理概念模型)

一、PDM概述  PDM(物理数据模型),通俗地理解,就是在PowerDesigner中以图形化的方式展示和设计数据库。  PDM中涉及到的基本概念包括:表;列;视图;主键;候选键;外键;存储过程;触发器;索引;完整性检查约束;  以上这些都是数据库的概念,不适合在PowerDesigner里面表述。二、创建PDM  创建PDM有4中方法:使

2015-11-17 09:04:29 1803

转载 Oracle 常见命令 (更新)

oracle中查看用户权限1.查看所有用户     select * from all_users; -------查看所有的用户     select * from user_users;  --------查看当前用户2.查看用户或角色系统权限:     select * from user_sys_privs;  --------查看当前用户的权限

2015-07-21 15:50:30 596

转载 Linux Socket编程

“一切皆Socket!”话虽些许夸张,但是事实也是,现在的网络编程几乎都是用的socket。——有感于实际编程和开源项目研究。我们深谙信息交流的价值,那网络中进程之间如何通信,如我们每天打开浏览器浏览网页时,浏览器的进程怎么与web服务器通信的?当你用QQ聊天时,QQ进程怎么与服务器或你好友所在的QQ进程通信?这些都得靠socket?那什么是socket?socket的类型

2015-05-07 10:07:00 479

转载 高级I/O复用技术:Epoll的使用及一个完整的C实例

高性能的网络服务器需要同时并发处理大量的客户端,而采用以前的那种对每个连接使用一个分开的线程或进程方法效率不高,因为处理大量客户端的时候,资源的使用及进程上下文的切换将会影响服务器的性能。一个可替代的方法是在一个单一的线程中使用非阻塞的I/O(non-blocking I/O)。        这篇文章主要介绍linux下的epoll(7)方法,其有着良好的就绪事件通知机制。我们将会使用C

2015-05-06 17:35:58 1401

转载 Linux下的I/O复用与epoll详解

前言      I/O多路复用有很多种实现。在linux上,2.4内核前主要是select和poll,自Linux 2.6内核正式引入epoll以来,epoll已经成为了目前实现高性能网络服务器的必备技术。尽管他们的使用方法不尽相同,但是本质上却没有什么区别。本文将重点探讨将放在EPOLL的实现与使用详解。为什么会是EPOLLselect的缺陷      高并发的核心解决方案是

2015-05-06 10:05:15 1424

转载 LINUX下GDB调试

本文写给主要工作在Windows操作系统下而又需要开发一些跨平台软件的程序员朋友,以及程序爱好者。GDB是一个由GNU开源组织发布的、UNIX/LINUX操作系统下的、基于命令行的、功能强大的程序调试工具。GDB中的命令固然很多,但我们只需掌握其中十个左右的命令,就大致可以完成日常的基本的程序调试工作。命令解释示例file 加载被调试的可执行

2015-05-04 09:37:14 405

转载 oracle 数据表死锁解决方法 Oracle

oracle 数据表死锁解决方法 Oracle 查询死锁信息的语句: 查看复制到剪贴板打印select a.owner,        a.object_name,        b.xidusn,        b.xidslot,        b.xidsqn,        b.session_id,        b.oracl

2015-04-28 20:36:46 2317

转载 深入Protobuf源码-Descriptor、Message、RPC框架

深入Protobuf源码-Descriptor、Message、RPC框架Descriptor框架对非optimize_for为LITE_RUNTIME的proto文件,protobuf编译器会在编译出的Java代码文件末尾添加一个FileDescriptor静态字段以描述该proto文件定义时的所有元数据信息、为每个message对象定义一个Descriptor静态字段以描述该mes

2015-04-24 17:12:17 1589

转载 深入Protobuf源码-编码实现

深入Protobuf源码-编码实现基本类型编码在前文有提到消息是一系列的基本类型以及其他消息类型的组合,因而基本类型是probobuf编码实现的基础,这些基本类型有:.proto TypeJava TypeC++ TypeWire Typedoubledoubledouble

2015-04-24 17:10:06 2603

转载 深入Protobuf源码-概述、使用以及代码生成实现

概述捣鼓hdfs、yarn、hbase、zookeeper的代码一年多了,是时候整理一下了。在hadoop (2.5.2)中protobuf是节点之间以及客户端和各个节点通信的基础序列化框架(协议),而基于avro和Writable的序列化框架则是这个协议里的payload,因而这一系列的文章打算从protobuf这个框架开始入手(版本2.5.0)。从抽象的角度来说,protobuf框架是

2015-04-24 17:08:44 3770

转载 基于Protobuf的通讯库--Poppy简介

背景    Poppy是基于Protocol Buffer的网络通讯解决方案。    众所周知,分布式网络程序对通讯协议的灵活性、容错性、可扩展性、安全性、性能等都有较高的要求,使得其复杂性比单机程序高很多。    最原始的网络程序往往采用自己定义协议,自己编写打包和解包代码的方式进行通讯,繁琐而又容易出错,灵活性和可扩充性也不好。    Proto

2015-04-24 17:06:54 1699

转载 Protocol Buffer技术深入理解(C++实例)

这篇Blog仍然是以Google的官方文档为主线,代码实例则完全取自于我们正在开发的一个Demo项目,通过前一段时间的尝试,感觉这种结合的方式比较有利于培训和内部的技术交流。还是那句话,没有最好的,只有最适合的。我想写Blog也是这一道理吧,不同的技术主题可能需要采用不同的风格。好了,还是让我们尽早切入主题吧。 一、生成目标语言代码 下面的命令帮助我们将MyMessage.proto文

2015-04-24 17:03:08 791

转载 epoll使用详解(精髓)

epoll - I/O event notification facility在linux的网络编程中,很长的时间都在使用select来做事件触发。在linux新的内核中,有了一种替换它的机制,就是epoll。相比于select,epoll最大的好处在于它不会随着监听fd数目的增长而降低效率。因为在内核中的select实现中,它是采用轮询来处理的,轮询的fd数目越多,自然耗时越多。并且

2015-04-12 23:44:49 462

转载 OTL 编程

OTL是Oracle 和 ODBC 的模板库,它屏蔽数据库操作的底层,提供数据库连接功能,以标准 C++ 流的方式完成嵌入式 SQL 语句、存储过程的执行和光标操作。 OTL 是 Oracle, Odbc and DB2-CLI Template Library 的缩写,是一个C++编译中操控关系数据库的模板库,它目前几乎支持所有的当前各种主流数据库。

2015-04-12 15:34:48 1044

转载 linux ftok()函数

系统建立IPC通讯(如消息队列、共享内存时)必须指定一个ID值。通常情况下,该id值通过ftok函数得到。ftok原型如下:key_t ftok( char * fname, int id )fname就时你指定的文件名(该文件必须是存在而且可以访问的),id是子序号,虽然为int,但是只有8个比特被使用(0-255)。当成功执行的时候,一个key_t值将会被返回,否则 -

2015-04-02 11:02:22 432

转载 configure.ac (configure.in)

目录(?)[+]configure.ac (sometimes also named: configure.in) is an input file for autoconf. It contains tests that check for conditions that are likely to differ on different platforms. The t

2015-03-31 09:11:54 847

转载 configure文件的生成

作为Linux下的程序开发人员,大家一定都遇到过Makefile,用make命令来编译自己写的程序确实是很方便。一般情况下,大家都是手工写一个简单Makefile,如果要想写出一个符合自由软件惯例的Makefile就不那么容易了。 在本文中,将给大家介绍如何使用autoconf和automake两个工具来帮助我们自动地生成符合自由软件惯例的Makefile,这样就可 以象常见的GNU程序一

2015-03-31 08:56:05 762

转载 Configure,Makefile.am, Makefile.in, Makefile文件之间关系

1.autoscan (autoconf): 扫描源代码以搜寻普通的可移植性问题,比如检查编译器,库,头文件等,生成文件configure.scan,它是configure.ac的一个雏形。    your source files --> [autoscan*] --> [configure.scan] --> configure.ac2.aclocal (automake):根据已

2015-03-30 23:15:04 556

转载 关于configure和Makefile

makefile脚本compiler程序开发linux编译器转篇文章,讲的不是很清楚,再附上几个资料连接,来自http://www.linuxdw.com/?q=node/77要获得更多资料,请访问 dede。关于 创建自动的配置脚本 有非常详细的参考资料。GNU.org 给出了如何 编写 configure.ac 和 创建 dede< 脚本 的建议。访问 GN

2015-03-30 23:09:11 525

转载 Linux下C++的通用Makefile与解析

本文给出万能Makefile的具体实现,以及对其中的关键点进行解析。所谓C++万能Makefile,即可编译链接所有的C++程序,而只需作很少的修改。号称万能Makefile,一统江湖。我对原版的Makefile做了些修改。首先揭开它的庐山真面目:##################################################### Generic makef

2015-03-30 22:52:21 357

转载 项目实用makefile

在上一篇文章“小项目实用makefile”中,已经说明了单个makefile管理层次目录的局限性。本文,主要总结一下项目中的一种实用makefile树写法,为10来个人协作的中小型项目makefile编写,提供参考。                1. 需求        从实用角度,makefile树应该达到以下需求:        1)自动加入编译系统。新增目录、文件后,能够自

2015-03-30 10:46:03 466

转载 例解 autoconf 和 automake 生成 Makefile 文件

本文介绍了在 linux 系统中,通过 Gnu autoconf 和 automake 生成 Makefile 的方法。主要探讨了生成 Makefile 的来龙去脉及其机理,接着详细介绍了配置 Configure.in 的方法及其规则。引子无论是在Linux还是在Unix环境中,make都是一个非常重要的编译命令。不管是自己进行项目开发还是安装应用软件,我们都经常要用到

2015-03-30 10:32:59 352

转载 Protocol Buffer技术详解(语言规范)

该系列Blog的内容主体主要源自于Protocol Buffer的官方文档,而代码示例则抽取于当前正在开发的一个公司内部项目的Demo。这样做的目的主要在于不仅可以保持Google文档的良好风格和系统性,同时再结合一些比较实用和通用的用例,这样就更加便于公司内部的培训,以及和广大网友的技术交流。需要说明的是,Blog的内容并非line by line的翻译,其中包含一些经验性总结,与此同时,对于一

2015-03-30 10:15:08 353

转载 ProtoBuf开发者指南

目录1   概览1.1   什么是protocol buffer1.2   他们如何工作1.3   为什么不用XML?1.4   听起来像是为我的解决方案,如何开始?1.5   一点历史2   语言指导2.1   定义一个消息类型2.2   值类型2.3   可选字段与缺省值2.4   枚举2.5   使用其他消息类型2.6   嵌套类型2.7   更新一个数据类型2.

2015-03-30 10:00:13 380

转载 Socket 长连接与短连接,心跳

长连接与短连接所谓长连接,指在一个TCP连接上可以连续发送多个数据包,在TCP连接保持期间,如果没有数据包发送,需要双方发检测包以维持此连接,一般需要自己做在线维持。 短连接是指通信双方有数据交互时,就建立一个TCP连接,数据发送完成后,则断开此TCP连接,一般银行都使用短连接。  比如http的,只是连接、请求、关闭,过程时间较短,服务器若是一段时间内没有收到请求即可关闭连接。 

2015-01-16 22:25:05 444

转载 Linux 系统管理命令

df 命令;df 是来自于coreutils 软件包,系统安装时,就自带的;我们通过这个命令可以查看磁盘的使用情况以及文件系统被挂载的位置;举例:[root@localhost beinan]# df -lhFilesystem容量 已用 可用 已用% 挂载点/dev/hda8**G 6.0G 4.4G 58% //dev/shm ***M 0 ***M 0% /dev/s

2014-12-18 22:44:29 646

原创 APUE(UNIX环境高级编程第二版)函数归纳(3-7章)

第三章 文件I/O序号函数名原型头文件1openint open(const char *pathname, int flag, …/* mode_t mode */ );#include 2createint create(const char *pathname, mode_t mode);#include

2014-10-12 22:12:17 834

转载 程序猿最应去的网站有哪些?- www.quora.com

要想成为优秀的程序猿,不仅要有一定天分,常与大神交流,自己多加练习才是正确的方法。下面是一些Quora用户推荐的国外网站,与广大程序猿或者希望学习编程的朋友们分享:1)编程练习和竞赛类http://www.codechef.com/http://www.spoj.com/p/http://programmingpraxis.com/http://projecteuler

2014-09-24 21:29:43 1166

转载 unix环境高级编程 APUE.H最简单编译方法(第二版) Linux和Ubuntu

/********************************************************************************第0种-最简单实用********************************************************************************/.1.直接进入源码目录的lib目录 

2014-09-11 23:44:30 2412

转载 如何迅速成为一名数据分析师?

数据分析最重要的可能并不是你熟悉的编程工具、分析软件,或者统计学知识,而是清楚你所使用的统计知识(统计学、计量、时间序列、非参数等等)背后的原理、假设及其局限性,知道各种数据分析工具(例如数据挖掘)能带来什么,不能带来什么,看到一组统计检验的结果你能言说什么,不能言说什么。

2014-06-20 13:49:16 1993

转载 程序员必知的10大基础实用算法

算法一:快速排序算法  快速排序是由东尼·霍尔所发展的一种排序算法。在平均状况下,排序 n 个项目要Ο(n log n)次比较。在最坏状况下则需要Ο(n2) 次比较,但这种状况并不常见。事实上,快速排序通常明显比其他Ο(n log n) 算法更快,因为它的内部循环(inner loop)可以在大部分的架构上很有效率地被实现出来。  快速排序使用分治法(Divide and conq

2014-06-20 13:40:11 690

转载 ACCESS数据库使用sql语句创建表

在Access中使用sql语句创建表时指定字段类型长度为255的文本varchar长度为20的文本varchar(20)日期时间datetime数字byte或smallint或integer,或bit自动编号:counter(1,1)外健:constraint外健名主键:primary key小数:numeric单精度:real双精度:float备注:m

2014-06-09 15:27:23 15589

转载 多线程--线程同步

线程的同步Critical section(临界区)用来实现“排他性占有”。适用范围是单一进程的各线程之间。它是:·         一个局部性对象,不是一个核心对象。·         快速而有效率。·         不能够同时有一个以上的critical section被等待。·         无法侦测是否已被某个线程放弃。Mutex

2014-06-08 14:58:10 831

转载 INI文件格式及其读写

ini文件(Initialization file),这种类型的文件中通常存放的是一个程序的初始化信息。ini文件由若干个节(Section)组成,每个Section由若干键(Key)组成,每个Key可以赋相应的值。读写ini文件实际上就是读写某个的Section中相应的Key的值,而这只要借助几个函数即可完成。1. 把信息写入系统的win.ini文件[cpp] view

2014-06-06 22:14:13 1039

转载 有关注册表API函数

注册表的操作,API为我们提供了大约25个函数。他提供了对注册表的读取,写入,删除,以及打开注册表及键值时所有函数,并且可以达到对注册表的备份,连接和对远端注册表进行查看等等。注册表对整个系统十分重要,你在进行操作时,一定要先考虑清楚。这些函数有: RegCloseKey RegConnectRegistry  RegCreateKey  RegCreateKeyEx  RegDeleteKe

2014-06-04 22:49:25 670

转载 vc 注册表编程

注册表编程下,用不同的方法实现对其的读取与写入: API:创建步骤:创建键RegCreateKey()或RegCreateKeyEx(),打开键RegOpenKey()或RegOpenKeyEx(),写入注册表RegSetvalue()或是RegSetvalue(),关闭RegCloseKey ()读取步骤 打开键RegOpenKey()或RegOpenKeyEx(),读取

2014-06-04 22:47:41 746

转载 就是这么“高大上”!20个最受欢迎的Linux命令

本文根据commandlinefu网站的历史排名,筛选出了前20个得票最高的Linux命令。看看你都能熟练使用了吗?本文根据commandlinefu网站的历史排名,筛选出了前20个得票最高的Linux命令。看看你都能熟练使用了吗? 1.   以 root 帐户执行上一条命令sudo !!2.  利用 Python 搭建一个简单的 Web 服务器,可通过 htt

2014-05-28 21:50:18 1070

转载 TCP 的那些事儿(下)

这篇文章是下篇,所以如果你对TCP不熟悉的话,还请你先看看上篇《TCP的那些事儿(上)》 上篇中,我们介绍了TCP的协议头、状态机、数据重传中的东西。但是TCP要解决一个很大的事,那就是要在一个网络根据不同的情况来动态调整自己的发包的速度,小则让自己的连接更稳定,大则让整个网络更稳定。在你阅读下篇之前,你需要做好准备,本篇文章有好些算法和策略,可能会引发你的各种思考,让你的大脑分配很多内存和计

2014-05-28 21:43:01 948

机器人学导论课后习题

机器人学导论课后习题

2013-09-12

svn-win32-1.6.17_py_2.7.rar

svn-win32-1.6.17_py_2.7.rar

2013-09-12

visual+basic数据库开发实例精粹

visual+basic数据库开发实例精粹,你可以得到很多很好的案例

2012-01-02

SQL Server数据库原理及应用(第二版)

数据库技术研究解决计算机信息处理过程中大量数据有效地组织和存储的问题,在数据库系统中减少数据存储冗余,实现数据共享,保障数据安全以及高效地检索数据和处理数据。

2012-01-02

空空如也

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

TA关注的人

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