自定义博客皮肤VIP专享

*博客头图:

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

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

博客底图:

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

栏目图:

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

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(22)
  • 收藏
  • 关注

原创 开发过程中用到的相关知识汇总

开发相关 语言相关 算法 数据库优化 linux系统 系能调优 工具 维护相关 监控工具 问题定位

2015-12-16 19:06:39 383

原创 Supervisor启动进程的一些例子

(1) 启动子进程(2) 对于同一个服务,可以启动N个进程(5) 启动多个子进程,并传递不同的参数(3) 启动多个子进程,子进程将log作为STDOUT输出(4) Supervisorctl管理子进程(6) 通过UI管理子进程(然并卵)(7) 向子进程发送信号(插件mc)(8) 监控子进程的内存消耗,超过后重启(插件superlance)

2015-10-17 10:54:13 797

原创 Supervisor的一些实现逻辑

(1) 如理启动子进程(2) 如理监控子进程(3) 如何把子进程的输出重定向到文件(4) Supervisorctl如何管理supervisord(5) 如初处理信号(6) 如何实现Eventlistener(7) 为什么不能管理daemon子进程

2015-10-17 10:53:31 513

原创 Supervisor的配置文件

Supervisor配置文件

2015-10-17 10:51:37 479

原创 Supervisor使用备忘

为什么要用Supervisor?是什么从这里说起,服务器端要将程序以daemon运行,其目的是摆脱控制终端的信号影响,以免进程退出。Daemon化流程:int daemonize(){ pid_t pid = fork(); if (pid == 0) exit(0); if (setsid() == -1) exit(

2015-10-17 10:40:45 1976

原创 Leetcode问题-2(Add Two Numbers)

问题描述 You are given two linked lists representing two non-negative numbers. The digits are stored in reverse order and each of their nodes contain a single digit. Add the two numbers and return it as

2015-08-16 12:24:53 468

原创 Leetcode问题-1(Two Sum)

Leetcode问题-1(Two Sum)问题描述 Given an array of integers, find two numbers such that they add up to a specific target number. The function twoSum should return indices of the two numbers such that t

2015-08-16 11:29:37 750

原创 Linux系统故障排除

话说软件项目的一般流程是:设计、编码、调优、上线。调优过程中经常遇到系统性能不够的时候,但是话说回来性能不好也正常,如果随便写点代码性能就牛X的一塌糊涂,可能也就不需要那么多的所谓的Best Prticace的经验总结了。最近看到一本书《DevOps故障排除》,书很薄,里面的内容可能在其他书中都有讲解,但是他总结的很好,可能对系统的发生故障后的排除流程做了一般总结,对于我来说,可能在调优阶段分析系统

2015-08-10 12:02:22 2847

原创 Linux系统故障排除

Linux系统故障排除话说软件项目的一般流程是:设计、编码、调优、上线。调优过程中经常遇到系统性能不够的时候,但是话说回来性能不好也正常,如果随便写点代码性能就牛X的一塌糊涂,可能也就不需要那么多的所谓的Best Prticace的经验总结了。最近看到一本书《DevOps故障排除》,书很薄,里面的内容可能在其他书中都有讲解,但是他总结的很好,可能对系统的发生故障后的排除流程做了一般总结,对

2015-08-10 09:46:28 12006

转载 Python 编码风格指南中译版(Google SOC)

转自:http://www.elias.cn/Python/PythonStyleGuide针对Python Style Guide Jun 18, 2009 版本翻译译文发布于:http://www.elias.cn/Develop/PythonStyleGuide译者:elias DOT soong AT gmail DOT comOn this page.

2015-03-08 23:02:06 633

原创 Linux系统编程:如何写Daemon进程(守护进程)

何谓Daemon?Daemon(守护进程)是运行在后台的一种特殊进程。它独立于控制终端并且周期性地执行某种任务或等待处理某些发生的事件。

2014-11-15 18:37:54 730

原创 Windows多线程基础(6):线程间通信1(互锁函数、CriticalSection)

一个进程内多个线程共享一份内存空间,因此多个线程拥有对各种系统资源的访问权,例如内存堆栈、串口、文件、窗口和其他许多资源。但是又不能让任何一个线程在任何时间都能访问所有的资源,例如对于同一块内存,一个线程从该内存读取数据,另一个线程却将数据写入该内存,如不加限制,该内存块的数据就会变得乱七八糟了。线程需要在进行通信的场景:当有多个线程访问共享资源而不使资源被破坏时。当一个线

2014-10-26 22:49:01 747

原创 windows多线程基础(5):使用_beginthreadex创建线程(C/C++ Runtime Library考虑)

标准CRT(C Runtime Library)问世于1970年,没有考虑到将CRT运行于多线程应用程序的问题。在多线程环境中存在问题的C/C++运行期库变量和函数包括:error, _doserrno, strtok, strerror, asctime, gmtime,malloc等等。这些函数中都存在全局变量或者要访问全局变量(对于malloc来说,进程的堆也算是全全局的了),所

2014-10-25 22:58:18 1216

原创 windows多线程基础(4):关于线程更多知识

再了解一点线程,看下图:调用CreateThread可以使系统创建一个线程内核对象,其初始引用计数是2(在线程停止运行和CreateThread返回的句柄关闭前,该内核对象都不会关闭)。该内核对象的其他属性也被初始化,暂停计数被设置为1,退出代码为STILL_ACTIVE,该对象设置为未通知状态。内核对象创建完成之后,系统分配栈的内存。系统将两个值写入新线程堆栈的上端(

2014-10-24 22:17:05 529

原创 windows多线程基础(3):如何正确结束线程

言归正传,线程创建后,如何终止呢?若要终止线程的运行,可以使用下面的方法:线程函数返回(最好使用这种方法)通过调用ExitThread函数,线程将自行撤销(最好不要使用这种方法)通过调用TerminateThread函数(应该避免使用这种方法)包含线程的进程终止运行(应该避免使用这种方法)1. 线程函数返回唯一能够确保所有的线程资源能被正确清除的唯一办法。

2014-10-22 22:38:46 545

原创 windows多线程基础(2):如何创建多线程CreateThread

1.进程首先会创建主线程当进程被初始化时,系统就要创建一个主线程。该线程与C运行期库的启动代码一道开始运行,启动代码则调用进入点函数(main),并且继续运行直到进入点函数返回并且C运行期库的启动代码调用ExitProcess为止。2.编写一个线程函数创建线程时,需要指定代码的入口函数,线程从这个入口点开始运行。main函数是主线程的入口函数。window的入口函数

2014-10-21 23:21:39 1120

原创 windows多线程基础(1):多进程 or 多线程 ?

首先提几个问题吧,(1)进程和线程的关系:资源,性能?(2)为什么要使用多线程?(3)windows上用CreateThread创建多线程,有问题么?(4)为什么要使用_beginthreadex来创建多线程?(5)用ExitThread退出多线程有问题么?(6)CRT支持多线程么,_beginthreadex是如何在多线程中协助CRT工作的?(7)多线程程序中,mal

2014-10-21 23:18:30 1674

原创 同步与互斥概念

进程同步是个操作系统级别的概念,进程是占有资源的最小单位(线程可以访问其所在进程内的所有资源,但线程本身并不占有资源),但对于某些资源来说,其在同一时间只能被一个进程占用,这些一次只能被一个进程所占用的资源就是所谓的“临界资源”。例如物理上的打印机,或是在硬盘或者内存中被多个进程共享的一些变量和数据。现在操作系统中,线程是调度的基本单位,虽然同一个进程的多个线程共享进程的资源,但是不同

2014-10-19 14:01:25 1029

原创 线程和进程的区别

1. 什么是进程?> 进程,是程序的动态执行过程,包括了代码加载、执行、执行结束的一个完整过程,这个过程也是进程从产生、发展到消亡的过程。> 在没有引入多进程的系统中,进程既是资源分配的基本单元,又是调度运行的基本单位。> 例如,用户运行自己的程序,系统创建了一个进程,并为其分配资源,包括:内存空间、磁盘空间、IO设备等。然后再将之放入进程的就绪队列,进程调度程序选中它,为其分配CPU

2014-10-19 10:38:41 540

原创 vector

1. Vector特点 a) 内存组织:连续?不连续? b) 查询效率 i. 访问 ii. 写入 iii. 删除 c) Vector内存管理 i. 增加方式 ii. 减小方式 2. Vector使用 3. Vector的实现 a) 迭代器实现 b) 实现

2014-09-17 21:22:00 386

原创 STL介绍

STL(Standard Template Library),是C++标准库的一部分。包括5个组件: 算法(algorithm) 容器(container) 迭代器(iterator) 函数(function) 适配器(adapter) 模板(template)是C++语言的一个优势,而标准模板库正是基于此。 1.容器(container) STL

2014-09-14 15:36:26 649

转载 一个所谓的定律

入职1个月:离职与 HR 关系较大;入职3个月:离职原因与直接上级关系较大;入职6个月:离职原因与企业文化关系较大;入职1年: 离职原因与职业晋升关系较大;入职3年: 离职原因与发展平台关系较大;入职6年: 员工离职的可能性很小。「这时的员工已经和组织变成一家人了,如果有外人说企业的坏话,他会第一个站出来反对,但是他却自己可以说出企业存在的弊病一大堆,可以用

2013-11-24 21:52:36 476

空空如也

空空如也

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

TA关注的人

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