千里之行,始于足下

工作技术点滴记录和积累

Java 8 Function函数式接口

Java 8 Function函数式接口 介绍 函数式接口其实就是一个抽象接口类,在Java 8之前已有的函数式接口有以下。 java.lang.Runnable java.util.concurrent.Callable java.util.Comparator 等等... ...

2018-05-09 00:49:20

阅读数:174

评论数:0

读懂ThreadLocal

ThreadLocal该类可以实现线程本地变量,即每个线程访问的变量是属于不同的副本的。先来段测试代码,然后根据源码解读其实现原理。 package com.walterlife.javacore; import java.util.concurrent.Executor; import ...

2018-05-07 22:36:35

阅读数:36

评论数:0

cocos2dx3.3 使用cocos studio2.0 导出的.csb文件

直接上步骤:(以COCOS2DX-JS 框架自带的飞机为例子) 1. 打开cocos studio2.0 新建节点文件 2. 导入资源,并按照需要设计新建的节点文件 红色框内为导入的资源,蓝色框内为csd文件的布局(注意,背景图坐标设置为(0,0),锚点设置为(0,0),其他元素锚点设置为...

2014-12-28 15:49:03

阅读数:4537

评论数:0

these critical programs are missing or too old

these critical programs are missing or too old 正则表达式ubuntu工具 These critical programs are missing or too old   这个问题是我在使用UBUNTU 9.10 时遇到的...

2014-08-11 18:55:22

阅读数:1137

评论数:0

vi 批量注释

多行注释: 1. 进入命令行模式,按ctrl + v进入 visual block模式(可视快模式),然后按j, 或者k选中多行,把需要注释的行标记起来 2. 按大写字母i,再插入注释符,例如// 3. 按esc键就会全部注释了(我的是按两下) ...

2014-03-17 12:03:29

阅读数:696

评论数:0

解决Access denied for user 'walter'@'localhost' (using password: YES)

ERROR 1045 (28000): Access denied for user 'mysql'@'localhost' (using password: NO) 此问题网上大部分都是围绕下面的第二步(修改密码)展开的,很是坑爹的是我怎么都登陆不进去(各种模式登陆均失败),何谈修改密码呢? ...

2014-03-11 23:55:21

阅读数:1068

评论数:0

c++中static_cast与dynamic_cast用法小结

static_cast:    1. 可用与基本数据类型之类型之间的转化, 但不可用与不同基本数据类型指针之间的转换   2. 可用于基于继承的指针对象或引用之间的转换,但是不是用动态类型识别机制 dynamic_cast:   用于基于继承的指针对象或引用之间的转换,基于动态类型...

2013-10-03 00:05:08

阅读数:953

评论数:0

c++内存布局

一个由C/C++编译的程序占用的内存分为以下几个部分 1、栈区(stack)— 程序运行时由编译器自动分配,存放函数的参数值,局部变量的值等。其操作方式类似于数据结构中的栈。程序结束时由编译器自动释放。 2、堆区(heap) — 在内存开辟另一块存储区域。一般由程序员分配释放, 若程序员不释放...

2013-09-29 14:05:15

阅读数:810

评论数:0

TCPDUMP详解(续)

TCPdump抓包命令  tcpdump是一个用于截取网络分组,并输出分组内容的工具。tcpdump凭借强大的功能和灵活的截取策略,使其成为类UNIX系统下用于网络分析和问题排查的首选工具。  tcpdump提供了源代码,公开了接口,因此具备很强的可扩展性,对于网络维护和入侵者都是非常有用的工...

2013-09-20 10:27:05

阅读数:1539

评论数:0

linux常用命令

1、 chown  chgrp chmod 2、 --time=atime(访问时间)  ctime(权限或属性修改时间) mtime(内容被修改时间) --full-time 3、新建文件默认权限为666,目录为777  umask 为需要减去的权限 4、文件隐藏属性 ls...

2013-09-13 00:07:42

阅读数:884

评论数:0

Linux2.6内核中epoll用法详解

epoll是linux2.6内核中才有的机制,其他版本内核中是没有的,是Linux2.6内核引入的多路复用IO的一种方式,用于提高网络IO性能的方法。在linux网络编程中,很长一段时间都是采用select来实现多事件触发处理的。Select存在如下几个方面的问题:一是每次调用时要重复地从用户态读...

2013-09-10 22:11:06

阅读数:1141

评论数:0

DNS原理及其解析过程

DNS原理及其解析过程 精彩剖析       网络通讯大部分是基于TCP/IP的,而TCP/IP是基于IP地址的,所以计算机在网络上进行通讯时只能识别如“202.96.134.133”之类的IP地址,而不能认识域名。我们无法记住10个以上IP地址的网站,所以我们访问网站时,更多的是在...

2013-09-10 12:51:16

阅读数:888

评论数:0

两个整数集合A和B,求其交集

两个整数集合A和B,求其交集。   1. 读取整数集合A中的整数,将读到的整数插入到map中,并将对应的值设为1。   2. 读取整数集合B中的整数,如果该整数在map中并且值为1,则将此数加入到交集当中,并将在map中的对应值改为2   通过更改map中的值,避免了将同样的值输出两次。 下面为源...

2013-08-28 22:15:00

阅读数:2546

评论数:0

UNIX网络编程--设置I/O超时

1. 调用alarm,它在指定超时期满时产生SIGALRM信号。这个方法涉及信号处理,而信号处理在不同的实现上存在差异,而且可能干扰进程中现有的alarm调用 2. 在select中阻塞等待I/O(select有内置的时间限制),以此代替直接阻塞在read或write调用上 3. 使用较新的SO_...

2013-08-28 15:29:31

阅读数:899

评论数:0

UNIX网络编程--实现并发UDP服务器

大多数UDP服务器程序是迭代运行的,即服务器等待一个客户请求,读入这个请求,处理这个请求,送回其应答,接着等待下一个客户请求。然而当客户请求的处理需消耗用过长时间时,我们就得设计一个并发的UDP服务器。以下为实现的方法:  1. 该方法比较简单,读入一个客户请求并发送一个应答后,与这个客户就...

2013-08-27 21:06:11

阅读数:1080

评论数:0

UNIX网络编程--套接字可读或可写的条件

socket可读的条件  1. socket的接收缓冲区中的数据字节大于等于该socket的接收缓冲区低水位标记的当前大小。对这样的socket的读操作将不阻塞并返回一个大于0的值(也就是返回准备好读入的数据)。我们可以用SO_RCVLOWATsocket选项来设置该socket的低水位标记。对...

2013-08-27 20:43:12

阅读数:1372

评论数:0

UNIX网络编程--TIME_WAIT

先看以下TIME_WAIT状态是怎么产生的,最好的解释就是看TCP状态转换图咯 对与每个状态的解释如下 1、建立连接协议(三次握手) (1)客户端发送一个TCP segment(Seq 由主机产生,假设为x, SYN=1)到服务器。这是三次握手过程中的segment 1。 (2) 服务器...

2013-08-26 19:48:56

阅读数:1186

评论数:0

linux命令--sysctl

sysctl  sysctl被用来在执行时配置内核参数。这些参数都存储在/proc/sys/(以键-值对形式存储)中。你可以用sysctl来读和写数据 命令参数   variable   要读的键值的名字 eg:sysctl net  -> 打印出有关网络的配置参数其   -n  v...

2013-08-25 22:16:07

阅读数:872

评论数:0

UNIX 网络编程之线程

概述:    实现并发服务器一般都是父进程accept一个连接,然后fork一个子进程,该子进程处理与该连接对端的客户之间的通信。但是fork是昂贵,耗资源和时间。而线程是轻量级线程,它的创建比进程的创建块10-100倍。在同一进程内除了共享全局变量外还共享:  大多数数据;进程指令; 打开的文件...

2013-08-25 19:58:46

阅读数:947

评论数:0

C++中delete, new以及new [], delete[]操作符内幕

人们有时好像喜欢故意使C++语言的术语难以理解。比如说new操作符(new operator)和operator new的区别。    当你写这样的代码: string *ps = new string("Memory Management");   你使用...

2013-08-25 14:39:13

阅读数:536

评论数:0

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