Welcome 微信登录

首页 / 操作系统 / Linux

C++并发编程 thread

C++并发编程 thread

std::thread C++11在标准库中为多线程提供组件, 使用线程需要包含头文件 thread, 其命名空间为 std.启动新线程每个进程至少有一个线程: 执行main()函数的线程, 其余线程有其各自的入口函数(线程函数)。当线程执行完线程函数后, 线程也会退出. 如果不传入线程函数(类似这种形式std::thread t;), 线程不会运行. 线程函数不能重载, 否则不能编译.在为一个线程创建了一个 std::thread 对象后, 如果线程已...
Linux系统编程 关于SDTIO库缓冲区

Linux系统编程 关于SDTIO库缓冲区

我们知道标准C中的文件读取的函数比如printf,fwrite等函数,实际都是调用OS级别的API,比如LINUX下就是wirte,read函数,而write read函数在用户态下是没有缓冲的,当然在内核态有OS CACHE/OS BUFFER,所以某些直接调用wirte,read的程序肯定会分配一个缓冲区,特别是O_DIRECT这种方式下,内核态的OS CACHE和OS BUFFER没用这种情况下用户态的BUFFER显得更加重要,因为不可能一次读一个字...
2016年Java服务器端开发面试总结

2016年Java服务器端开发面试总结

因为一些个人原因,陆陆续续参加了一些校招补招、社招的笔试和面试(BAT),也包括一些国外公司(Spotify, Google, Ericsson),最后有幸被网易收入麾下,拿到了S。下面罗列一些我复习中的要点,如果能以此为一个参考,做好充足的准备,国内BAT这些公司的基础技术笔试和面试应该没什么问题。当然对于一些大公司,基础知识可能不是最被看重的,关键是学习能力,独立解决问题的能力,是否是一个"灵性"的人,我一直觉得我们程序员是在创造一个新的世界。 ...
Python实时处理log文件脚本

Python实时处理log文件脚本

这个Python脚本是用来对实时文件的内容监控,比如 Error 或者 time out 字段都可以进行自定义;算是我的第一个真正的Python脚本,自己感觉还是比较臃肿,不过打算放到blog上记录一下(还是初学者,大神们勿喷哈),真心希望博友们能够再指点一下(现在记录每次的文件大小值是输出到了一个文件中,并且里面还嵌套了有shell命令,这些我认为都是可以优化掉的吧,只是现在我还不知道怎么做);告警是基于zabbix,自定义的模板是120s执行一次#!/...
Java反射 之 反射基础

Java反射 之 反射基础

一、反射反射:Java反射机制是在运行状态中,对于任意一个类,都能够知道这个类的所有属性和方法;对于任意一个对象,都能够调用它的任意一个方法和属性;这种动态获取的信息以及动态调用对象的方法的功能称为Java语言的反射机制。要想解剖一个类,必须先要获取到该类的字节码文件对象。而解剖使用的就是Class类中的方法.所以先要获取到每一个字节码文件对应的Class类型的对象。对于反射的操作实际上就是通过Class对象获取:*a、java.lang.reflect....
Spring IOC代码阅读

Spring IOC代码阅读

1,理解控制反转 以前一直说着这个词,然后把它等于上ioc这个词,再等于上代码里一个bean里依赖了其他bean,不用new,用注解,用xml去描述,就可以了。能用就行了,实际理论的不管也不影响编码,其实能用了内心也是理解是怎么回事的,知识理论上说不好而已。 我觉得只要理解一个事情就好了,ioc所谓的控制翻转,它控制翻转的是什么? 依赖对象的获得被反转 把一个bean中对其他bean的依赖这个事提取出来,统一由一个容器管理,解耦了bean管理和业务的...
嵌入式开发中常见3个的C语言技巧

嵌入式开发中常见3个的C语言技巧

今天我来说几个在嵌入式开发中常用的C语言技巧吧。也许你曾经用过,也许你只是见到过但是没有深入理解。那么今天好好补充下吧^_^1.指向函数的指针 指针不光能指向变量、字符串、数组,还能够指向函数。在C语言中允许将函数的入口地址赋值给指针。这样就可以通过指针来访问函数。还可以把函数指针当成参数来传递。函数指针可以简化代码,减少修改代码时的工作量。通过接下来的讲解大家会体会到这一点的。/*函数指针简单讲解*通过指向函数的指*针调用比较两个数*大小的程序*/#i...
Python中的Lambda表达式

Python中的Lambda表达式

Lambda表达式在python程序中是一种很常见的匿名方法的书写形式,它书写起来非常简单,但是牺牲了可读性。下面来看一下Lambda的简单介绍。语法lambda [parameter_list]:expressionLambda表达式的返回值是一个函数,[parameter_list]是函数的参数,expression是具体的操作。它对应的非匿名方法的书写方式为:def function([parameter_list]):expression如下面的例...
C#中的委托解析

C#中的委托解析

谈及到C#的基本特性,“委托”是不得不去了解和深入分析的一个特性。对于大多数刚入门的程序员谈到“委托”时,都会想到“将方法作为方法的参数进行传递”,很多时候都只是知道简单的定义,主要是因为“委托”在理解上有较其他特性比较难的地方。在本次说明中,不会将委托的简单声明和调用作为重点。 “委托”不需要直接定义一个要执行的行为,而是将这个行为...
STM32F103 GPIO的外部中断的使用实例

STM32F103 GPIO的外部中断的使用实例

STM32的GPIO可以作为中断输入使用,这样增强了实时检测性,可以用于外部按键或是触控等使用。如果使用,其实不难,这里使用标准的固件库,加入外部中断的库文件:stm32f10x_exti.c在stm32f10x_conf.h 中,打开 #include "stm32f10x_exti.h"这里通过外部触控的方式,点亮或是关闭一个LED灯的例子,熟悉一下STM32F103 系列外部中断的使用。我这里使用的GPIO为:PC11,头文件的GPIO宏定义为:/*...
Android 5.1源码编译环境搭建

Android 5.1源码编译环境搭建

根据官方及网络上的教程,成功搭建了Android 5.1源码的编译环境并成功编译。过程如下:一:使用虚拟机,安装Ubuntu。ubuntu-14.04.5-desktop-amd64.iso(官方推荐)硬盘空间:200G内存:4G以上CPU:1个处理器,4核心。使用VMWare 安装。(1)终端右键打开方式的设置命令行下运行:$ sudo apt-get install nautilus-open-terminal(2)安装VMTools,这样可以在主机与...
<< 1081 1082 1083 1084 1085 1086 1087 1088 1089 1090 >>