- Android AOSP源码研究之万事开头难----经验教训记录
职场007
AndoridAOSPAndroidAOSPandroid源码下载编译Android源码烧录AOSP避坑指南
文章目录1.概述2.Android源下载1.配置环境变量2.安装curl3.下载repo并授权4.创建一个文件夹保存源码5.设置repo的地址并配置为清华源6.初始化仓库7.指定我们需要下载的源码分支并初始化2.1使用移动硬盘存放Android源码的坑2.2解决方法3.Android源码编译4.Android源烧录1.概述做了四五年的android应用层开发后,想研究下底层源码的实现,所以想下载源
- Android开发基础(一)
Kevin写代码
Androidandroidjavakotlin
Android开发基础(一)本篇主要是从Android系统架构理解Android开发。Android系统架构Android系统的架构采用了分层的架构,共分为五层,从高到低分别是Android应用层(SystemApps)、Android应用框架层(JavaAPIFramework)、Android系统运行库层(Native)、硬件抽象层(HAL)和Linux内核层(LinuxKernel);这种分
- 2023 年终总结
cqust_qilin02811
碎碎念碎碎念
文章目录年终总结AndroidPySide2算法生活其他2024年展望学习目标打卡目标其他年终总结2023年成长了许多,这是步入社会的第一年,也是大学毕业的第一年。从2023年2.1实习以来,主要涉及Android应用层和python-qt,略了解了jni,阅读了Android开发艺术探索的一些模块,对生命周期、四大组件的体会加深了,也对Android系统权限,各类广播和服务有了一些理解。pyth
- (二)Android系统架构
抱着吉他学Android
Androidframework学习笔记android系统架构java
(二)Android系统架构文章目录(二)Android系统架构前言一、Android系统架构图二、应用层三、AndroidFramework框架层框架层核心服务四、AndroidRuntime运行时库层程序库运行库五、Linux内核层前言Android系统构架是安卓系统的体系结构,android的系统架构和其操作系统一样,采用了分层的架构,共分为四层,从高到低分别是Android应用层,Andr
- 音视频学习之路--Shell脚本基础
蜗牛是不是牛
前言脚本语言非常重要,尤其是在编译的时候,因为之前都是搞的Android应用层开发,很少搞shell脚本这种,顶多就是gradle脚本的编写,这方面比较薄弱,所以这里重点学习一下Shell脚本。正文首先Shell是一个程序,它是用C语言编写的,通过Shell可以更好的使用Linux。HelloWorld还是从HelloWorld开始,vim创建一个test.sh,在里面写入:然后保存,再给这个sh
- 比较浅显易懂的AIDL
花花是男神
Binder是Android中的一种跨进程通信方式,Android的四大组件、各种Manager和其对应ManagerService等无不与Binder挂钩。从AndroidFramework角度来说,Binder是ServiceManager连接ActivityManager、WindowManager等Manager和他们相应ManagerService的桥梁;从Android应用层来说,Bi
- 如何定位和解决Andorid的内存溢出问题
yjdsqb
OOMOOMandroid
最近项目功能完善得差不多,bug也改得差不多,主要精力放在优化上,monkey测试时,偶尔会出现OOM异常,所以特意整理一下OOM的定位及解决方案。在别人整理的文章上,增加自己遇到的一些问题,从而有了这篇文章。原文参考:如何定位和解决Andorid的内存溢出问题(大总结)一、Android的内存机制android应用层是由java开发的,android的davlik虚拟机与jvm也类似,只不过它是
- Google Sample MVP Android架构蓝图
图乐
androidandroid
GoogleSampleMVPAndroid架构蓝图目前Android主流的开发架构:原生开发(MVC),MVP,MVVM等今天简单的说一下我对于Android架构的了解和对GoogleMVP的认识分析。说Android就不得不提到Java,Android的应用层和Java有着不解之缘,Android应用层参考Java的实现并且进行了很多的优化,比如大家都熟悉的JVM与Android虚拟机。其实A
- Android 系统架构
时光の尘
Androidandroid系统架构1024程序员节笔记java小程序微信小程序
目录Android系统架构1.Android应用层2.Android应用框架层2.1ActivityManager(活动管理器)2.2WindowManager(窗口管理器)2.3ContentProvider(内容提供器)2.4ViewSystem(视图系统)2.5NotificationManager(通告管理器)2.6PackageManager(包管理器)2.7TelephonyManag
- JVM虚拟机原理深入解析,小白也能看明白
椰果学Android
程序员android移动开发面试
谈起Android框架体系架构,我先提个问:什么是Android框架体系架构?Android系统构架是安卓系统的体系结构,android的系统架构和其操作系统一样,采用了分层的架构,共分为四层,从高到低分别是Android应用层,Android应用框架层,Android系统运行库层和Linux内核层。Android系统构架主要应用于ARM平台,但不仅限于ARM,通过编译控制,在X86、MAC等体系
- Android应用层View绘制流程与源码分析
萨达哈鲁酱
前言Activity中界面加载显示的基本流程原理,最终分析结果就是下面的关系:这里写图片描述看见没有,如上图中id为content的内容就是整个View树的结构,所以对每个具体View对象的操作,其实就是个递归的实现。Android中的任何一个布局、任何一个控件其实都是直接或间接继承自View实现的,当然也包括我们后面一步一步引出的自定义控件也不例外,所以说这些View应该都具有相同的绘制流程与机
- 图形图像处理 - 手写 QQ 说说图片处理效果
你也不知道
OpenCv的基础学习目前先告一段落了,后面我们要开始手写一些常用的效果,且都是基于Android平台的。希望我们有一定的C++和JNI基础,如果我们对这块知识有所欠缺,大家不妨看看这个:Android进阶之旅(JNI基础实战)我们可能会忍不住问,做android应用层开发,学习图形图像处理到底有啥好处?首先不知我们是否有在Glide中有看到像这样的源码:privatestaticfinalint
- Android 黑屏问题分析处理总结
yi诺千金
AndroidAndroidFramework从入门到入土android
介绍黑屏问题是显示相关的综合性问题,涉及Android应用层、框架层和底层SurfaceFlinger、屏显等多个领域。下面有一些基础的判断来定位黑屏问题的归属:(1)屏幕没有亮屏、背光为0则需先从power、屏显角度分析(2)屏幕黑屏,但可以进行三指截屏、power键+音量下键截屏,并且截图正常显示(非黑图),则需先从屏显角度分析(3)视频类、相机类显示黑屏,需要先确认编解码、阅览显示问题(4)
- Android IPC基础速成
酷酷的Demo
Binder是Android中的一个类,它实现了IBinder接口。从IPC角度看,Binder是Android中一种跨进程通信的方式;Binder还可以理解为虚拟的物理设备,它的设备驱动是/dev/binder;从Framework层角度看,Binder是ServiceManager连接各种Manager和相应的ManagerService的桥梁;从Android应用层来说,Binder是客户端
- 绘制流程
奋飞的蜗牛ing
参考:Android应用层View绘制流程与源码分析-工匠若水https://blog.csdn.net/yanbober/article/details/46128379前言View在Activity的onCreate()方法中通过setContentView()方法添加到Activity的DecorView上。此时ViewRootImpl和DecorView没有关联上,不会绘制View。在Ac
- 关于Activity启动后View何时开始绘制视图(onCreate中还是onResume之后?)
树新蜜蜂
1.问题引入在网上看一些文章的时候,发现Activity启动后,何时开始绘制View,有不同的说法:比如:在[Android应用层View绘制流程与源码分析]中,包括我们的分析也知道:在Activity的onCreate方法中会调用setContentView,接下来的调用链是:PhoneWindow.setContentView->ViewGroup.addView()->ViewGroup.i
- Android USB 输入设备
初级代码搬运工007
AndroidUSBandroid
一、Android官方定义:用于描述输入设备的信息、性质、功能。每个输入设备可以支持多类输入,例如,多功能键盘可以将标准键盘的功能与触控板鼠标或其他定点设备组合在一起。一些输入设备可以呈现出多个可区分的输入源,比如你的USBDongle鼠标,它可能具备键盘、鼠标、游戏摇杆的性质。二、Android应用层关联的API://输入设备管理类:android.hardware.input.InputMan
- Android系统架构(二)—Android系统启动过程
Coding-ls
AndroidAndroid系统Android系统启动流程
前言作为一个Android应用层的开发者,我们平常开发Android应用程序可能对Android系统了解的并不深入。虽然Android系统底层细节并不需要应用层开发者十分了解,但能够知道Android系统的基本架构也是必要。这里就分析一下Android系统的启动流程来了解一下Android系统的启动过程。上图是Android系统启动过程的一个概览。从图中可以看到,Android系统的启动过程涉及到
- android 以太网和Wi-Fi共存使用
耀耀耀切克闹
开发遇坑记录android网络
android以太网和Wi-Fi共存使用以太网和Wi-Fi共存使用从Android应用层方面从Android底层方面以太网和Wi-Fi共存使用现在联网方式相当多,其中就会有很多需求,要求在同一个app存在多种连接网络方式,且互不影响。从Android应用层方面我就直接把方法列举出来,如果有需要,后面再补上详细代码。还有方法欢迎大家补充。方法功能适用场景ConnectivityManager.bin
- Android 系统的安全性分析(6)--Android应用层权限的讨论
小馬佩德罗
#Android系统的安全性分析android权限
声明最近工作上涉及到对Android系统安全性的改造,在改造之前先分析整理下目前Android系统自身的安全性;参考了一些文章及书籍,在这里大部分是对别人描述的提炼,我挑出一些对我有用的内容整理;如果你是一个APP开发者,想更深入了解Android权限机制,会对此篇更感兴趣。1.应用层的安全架构 Android系统在每一层都做了不同的安全措施,如下表所示:层级安全措施应用层接入权限、代码保护框架
- 一个Android应用层开发如何转型深入Android Framework?
代码与思维
androidFrameworkAndroid进阶性能优化framework
作为一个工作了好几年的Android应用层开发者,准备在工作之余干一件事情,那就是分享一些Android系统知识,为什么决定要做这个呢,理由如下:帮助更多人转型Android系统开发不知何时起,单纯的Android应用层开发越来越少了,主流技术演变也越来越快,从之前的rxjava到如今的协程,从之前MVC到如今的MVVM,还有Flutter、Compose等技术,可以说是日新月异。当我们在使用这些
- 安卓开发 开发前你需要了解的一些资料(一)
筏执
前言 在安卓开发初步了解安卓和配置安卓环境中,我们简单的介绍了安卓和配置安卓环境。我们使用了AndroidStudio作为我们开发安卓的主要工具。所以,在本次中依旧使用AndroidStuido。了解JDK、SDK、NDKJDK JDK是JAVA语言的编译器,全称为JavaDevelopmentKit,即Java开发工具包。因为Android应用层采用Java开发,其运行在Java虚拟机(Da
- Android深入理解IPC机制(二)浅谈Binder
怡红快绿
Binder是Android中的一个类,它继承了IBinder接口。从IPC角度考虑,Binder是Android中的一种跨进程通信方式,Binder还可以理解为一种虚拟的物理设备,它的设备驱动是/dev/binder;从AndroidFramework角度考虑,Binder是连接各种Manager和相应ServiceManager的桥梁;从Android应用层来讲,Binder是客户端和服务器进
- Android SDK 面试题
星邪Ara
1.1请简要谈谈Android系统的架构组成?android系统分为四部分,从高到低分别是:1、Android应用层Android会同一系列核心应用程序包一起发布,该应用程序包包括email客户端,SMS短消息程序,日历,地图,浏览器,联系人管理程序等。所有的应用程序都是使用JAVA语言编写的。2、Android应用框架层开发人员也可以完全访问核心应用程序所使用的API框架。该应用程序的架构设计简
- Binder
Hilbert1
image.pngBinder是Android平台上一种跨进程交互技术。在Android应用层次上,基本上已经没有了进程的概念。但实现层上它还是需要构建在进程之上。Binder通信采用C/S架构,从组件视角来说,包含Client,Server,ServiceManager以及binder驱动,其中ServiceManager用于管理系统中的各种服务。无论是注册服务还是获取服务的过程都需要Servi
- 深入 Android 底层服务(service)
代码与思维
Android移动开发Frameworkandroidvr移动开发Frameworkandroid开发
前言我们都知道,字节最近发布了PICO4VR眼镜,我买了一个,体验还行。因为我也是做VR眼镜的Android应用层开发的,所以想把自己项目中遇到的一些Android技术分享给读者。近些年随着VR眼镜的兴起,Android的的服务(Service)和广播(Broadcast)以及内容提供者(ContentProvider)越来越被重用,相反Activity这个曾经很吃香的组件在VR眼镜的开发过程中却
- android驱动学习---led实验
manshq163com
androidandroidjnilayoutstructmodule硬件驱动
android驱动学习---led实验博客分类:android驱动学习androidjni驱动========================驱动:内核:android-kernel2.6.36(必须对应你的板子上内核,不然会出现insmod错误)目的:通过android应用层用户空间访问内核空间驱动程序。实验:Button控件,点亮和熄灭LED。注明:android应用层访问驱动,一般有2种方法
- 介绍一个EPG前端框架
kan尘埃
EPGIPTV芒果复刻前端框架ui
参考android应用层表现,使用application、page,来实现页面间的跳转1.单页面应用2.整合焦点逻辑3.循环列表4.弹窗5.滚动器6.图片懒加载7.文字跑马灯8.碎片布局框架地址:github地址、gitee地址案例地址:芒果app版在EPG上的复刻,github地址、gitee地址效果已完成的功能及版本计划当前版本0.2.0version:0.2.0date:2022-08-21
- 征服面试官:Binder 原理篇 掌握这篇面试题汇总,吊打面试官!
Jaynm
面试题android开发androidbinderbinderandroid面试binder原理
Binder是Android中的一种跨进程通信方式。从AndroidFramework角度来说Binder是ServiceManager连接各种Manager(ActivityManager、WindowManager等等)和相应ManagerService的桥梁;从Android应用层来说Binder是客服端与服务端进行通信的媒介。1、什么是Binder?直观来说,Binder是Android中
- 被面试官逼问的“Android系统启动流程”,该如何回答?(从原理分析到面试实战)
守住Android最后的光
Android开发Android面试android面试androidstudio程序员it
作为**“Android框架层”**这个大系列中的第一个系列,我们首先要了解的是Android系统启动流程,在这个流程中会涉及到很多重要的知识点。对于纯Android应用层开发来讲,了解一些Android的启动流程的知识并不会直接提高自己的代码质量。但是作为整个Android系统的开端,这部分的流程时刻影响着应用层的方方面面。这些知识也是作为Android开发进阶必须要了解的一部分。那么当我们按下
- jQuery 键盘事件keydown ,keypress ,keyup介绍
107x
jsjquerykeydownkeypresskeyup
本文章总结了下些关于jQuery 键盘事件keydown ,keypress ,keyup介绍,有需要了解的朋友可参考。
一、首先需要知道的是: 1、keydown() keydown事件会在键盘按下时触发. 2、keyup() 代码如下 复制代码
$('input').keyup(funciton(){  
- AngularJS中的Promise
bijian1013
JavaScriptAngularJSPromise
一.Promise
Promise是一个接口,它用来处理的对象具有这样的特点:在未来某一时刻(主要是异步调用)会从服务端返回或者被填充属性。其核心是,promise是一个带有then()函数的对象。
为了展示它的优点,下面来看一个例子,其中需要获取用户当前的配置文件:
var cu
- c++ 用数组实现栈类
CrazyMizzz
数据结构C++
#include<iostream>
#include<cassert>
using namespace std;
template<class T, int SIZE = 50>
class Stack{
private:
T list[SIZE];//数组存放栈的元素
int top;//栈顶位置
public:
Stack(
- java和c语言的雷同
麦田的设计者
java递归scaner
软件启动时的初始化代码,加载用户信息2015年5月27号
从头学java二
1、语言的三种基本结构:顺序、选择、循环。废话不多说,需要指出一下几点:
a、return语句的功能除了作为函数返回值以外,还起到结束本函数的功能,return后的语句
不会再继续执行。
b、for循环相比于whi
- LINUX环境并发服务器的三种实现模型
被触发
linux
服务器设计技术有很多,按使用的协议来分有TCP服务器和UDP服务器。按处理方式来分有循环服务器和并发服务器。
1 循环服务器与并发服务器模型
在网络程序里面,一般来说都是许多客户对应一个服务器,为了处理客户的请求,对服务端的程序就提出了特殊的要求。
目前最常用的服务器模型有:
·循环服务器:服务器在同一时刻只能响应一个客户端的请求
·并发服务器:服
- Oracle数据库查询指令
肆无忌惮_
oracle数据库
20140920
单表查询
-- 查询************************************************************************************************************
-- 使用scott用户登录
-- 查看emp表
desc emp
- ext右下角浮动窗口
知了ing
JavaScriptext
第一种
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/
- 浅谈REDIS数据库的键值设计
矮蛋蛋
redis
http://www.cnblogs.com/aidandan/
原文地址:http://www.hoterran.info/redis_kv_design
丰富的数据结构使得redis的设计非常的有趣。不像关系型数据库那样,DEV和DBA需要深度沟通,review每行sql语句,也不像memcached那样,不需要DBA的参与。redis的DBA需要熟悉数据结构,并能了解使用场景。
- maven编译可执行jar包
alleni123
maven
http://stackoverflow.com/questions/574594/how-can-i-create-an-executable-jar-with-dependencies-using-maven
<build>
<plugins>
<plugin>
<artifactId>maven-asse
- 人力资源在现代企业中的作用
百合不是茶
HR 企业管理
//人力资源在在企业中的作用人力资源为什么会存在,人力资源究竟是干什么的 人力资源管理是对管理模式一次大的创新,人力资源兴起的原因有以下点: 工业时代的国际化竞争,现代市场的风险管控等等。所以人力资源 在现代经济竞争中的优势明显的存在,人力资源在集团类公司中存在着 明显的优势(鸿海集团),有一次笔者亲自去体验过红海集团的招聘,只 知道人力资源是管理企业招聘的 当时我被招聘上了,当时给我们培训 的人
- Linux自启动设置详解
bijian1013
linux
linux有自己一套完整的启动体系,抓住了linux启动的脉络,linux的启动过程将不再神秘。
阅读之前建议先看一下附图。
本文中假设inittab中设置的init tree为:
/etc/rc.d/rc0.d
/etc/rc.d/rc1.d
/etc/rc.d/rc2.d
/etc/rc.d/rc3.d
/etc/rc.d/rc4.d
/etc/rc.d/rc5.d
/etc
- Spring Aop Schema实现
bijian1013
javaspringAOP
本例使用的是Spring2.5
1.Aop配置文件spring-aop.xml
<?xml version="1.0" encoding="UTF-8"?>
<beans
xmlns="http://www.springframework.org/schema/beans"
xmln
- 【Gson七】Gson预定义类型适配器
bit1129
gson
Gson提供了丰富的预定义类型适配器,在对象和JSON串之间进行序列化和反序列化时,指定对象和字符串之间的转换方式,
DateTypeAdapter
public final class DateTypeAdapter extends TypeAdapter<Date> {
public static final TypeAdapterFacto
- 【Spark八十八】Spark Streaming累加器操作(updateStateByKey)
bit1129
update
在实时计算的实际应用中,有时除了需要关心一个时间间隔内的数据,有时还可能会对整个实时计算的所有时间间隔内产生的相关数据进行统计。
比如: 对Nginx的access.log实时监控请求404时,有时除了需要统计某个时间间隔内出现的次数,有时还需要统计一整天出现了多少次404,也就是说404监控横跨多个时间间隔。
Spark Streaming的解决方案是累加器,工作原理是,定义
- linux系统下通过shell脚本快速找到哪个进程在写文件
ronin47
一个文件正在被进程写 我想查看这个进程 文件一直在增大 找不到谁在写 使用lsof也没找到
这个问题挺有普遍性的,解决方法应该很多,这里我给大家提个比较直观的方法。
linux下每个文件都会在某个块设备上存放,当然也都有相应的inode, 那么透过vfs.write我们就可以知道谁在不停的写入特定的设备上的inode。
幸运的是systemtap的安装包里带了inodewatch.stp,位
- java-两种方法求第一个最长的可重复子串
bylijinnan
java算法
import java.util.Arrays;
import java.util.Collections;
import java.util.List;
public class MaxPrefix {
public static void main(String[] args) {
String str="abbdabcdabcx";
- Netty源码学习-ServerBootstrap启动及事件处理过程
bylijinnan
javanetty
Netty是采用了Reactor模式的多线程版本,建议先看下面这篇文章了解一下Reactor模式:
http://bylijinnan.iteye.com/blog/1992325
Netty的启动及事件处理的流程,基本上是按照上面这篇文章来走的
文章里面提到的操作,每一步都能在Netty里面找到对应的代码
其中Reactor里面的Acceptor就对应Netty的ServerBo
- servelt filter listener 的生命周期
cngolon
filterlistenerservelt生命周期
1. servlet 当第一次请求一个servlet资源时,servlet容器创建这个servlet实例,并调用他的 init(ServletConfig config)做一些初始化的工作,然后调用它的service方法处理请求。当第二次请求这个servlet资源时,servlet容器就不在创建实例,而是直接调用它的service方法处理请求,也就是说
- jmpopups获取input元素值
ctrain
JavaScript
jmpopups 获取弹出层form表单
首先,我有一个div,里面包含了一个表单,默认是隐藏的,使用jmpopups时,会弹出这个隐藏的div,其实jmpopups是将我们的代码生成一份拷贝。
当我直接获取这个form表单中的文本框时,使用方法:$('#form input[name=test1]').val();这样是获取不到的。
我们必须到jmpopups生成的代码中去查找这个值,$(
- vi查找替换命令详解
daizj
linux正则表达式替换查找vim
一、查找
查找命令
/pattern<Enter> :向下查找pattern匹配字符串
?pattern<Enter>:向上查找pattern匹配字符串
使用了查找命令之后,使用如下两个键快速查找:
n:按照同一方向继续查找
N:按照反方向查找
字符串匹配
pattern是需要匹配的字符串,例如:
1: /abc<En
- 对网站中的js,css文件进行打包
dcj3sjt126com
PHP打包
一,为什么要用smarty进行打包
apache中也有给js,css这样的静态文件进行打包压缩的模块,但是本文所说的不是以这种方式进行的打包,而是和smarty结合的方式来把网站中的js,css文件进行打包。
为什么要进行打包呢,主要目的是为了合理的管理自己的代码 。现在有好多网站,你查看一下网站的源码的话,你会发现网站的头部有大量的JS文件和CSS文件,网站的尾部也有可能有大量的J
- php Yii: 出现undefined offset 或者 undefined index解决方案
dcj3sjt126com
undefined
在开发Yii 时,在程序中定义了如下方式:
if($this->menuoption[2] === 'test'),那么在运行程序时会报:undefined offset:2,这样的错误主要是由于php.ini 里的错误等级太高了,在windows下错误等级
- linux 文件格式(1) sed工具
eksliang
linuxlinux sed工具sed工具linux sed详解
转载请出自出处:
http://eksliang.iteye.com/blog/2106082
简介
sed 是一种在线编辑器,它一次处理一行内容。处理时,把当前处理的行存储在临时缓冲区中,称为“模式空间”(pattern space),接着用sed命令处理缓冲区中的内容,处理完成后,把缓冲区的内容送往屏幕。接着处理下一行,这样不断重复,直到文件末尾
- Android应用程序获取系统权限
gqdy365
android
引用
如何使Android应用程序获取系统权限
第一个方法简单点,不过需要在Android系统源码的环境下用make来编译:
1. 在应用程序的AndroidManifest.xml中的manifest节点
- HoverTree开发日志之验证码
hvt
.netC#asp.nethovertreewebform
HoverTree是一个ASP.NET的开源CMS,目前包含文章系统,图库和留言板功能。代码完全开放,文章内容页生成了静态的HTM页面,留言板提供留言审核功能,文章可以发布HTML源代码,图片上传同时生成高品质缩略图。推出之后得到许多网友的支持,再此表示感谢!留言板不断收到许多有益留言,但同时也有不少广告,因此决定在提交留言页面增加验证码功能。ASP.NET验证码在网上找,如果不是很多,就是特别多
- JSON API:用 JSON 构建 API 的标准指南中文版
justjavac
json
译文地址:https://github.com/justjavac/json-api-zh_CN
如果你和你的团队曾经争论过使用什么方式构建合理 JSON 响应格式, 那么 JSON API 就是你的 anti-bikeshedding 武器。
通过遵循共同的约定,可以提高开发效率,利用更普遍的工具,可以是你更加专注于开发重点:你的程序。
基于 JSON API 的客户端还能够充分利用缓存,
- 数据结构随记_2
lx.asymmetric
数据结构笔记
第三章 栈与队列
一.简答题
1. 在一个循环队列中,队首指针指向队首元素的 前一个 位置。
2.在具有n个单元的循环队列中,队满时共有 n-1 个元素。
3. 向栈中压入元素的操作是先 移动栈顶指针&n
- Linux下的监控工具dstat
网络接口
linux
1) 工具说明dstat是一个用来替换 vmstat,iostat netstat,nfsstat和ifstat这些命令的工具, 是一个全能系统信息统计工具. 与sysstat相比, dstat拥有一个彩色的界面, 在手动观察性能状况时, 数据比较显眼容易观察; 而且dstat支持即时刷新, 譬如输入dstat 3, 即每三秒收集一次, 但最新的数据都会每秒刷新显示. 和sysstat相同的是,
- C 语言初级入门--二维数组和指针
1140566087
二维数组c/c++指针
/*
二维数组的定义和二维数组元素的引用
二维数组的定义:
当数组中的每个元素带有两个下标时,称这样的数组为二维数组;
(逻辑上把数组看成一个具有行和列的表格或一个矩阵);
语法:
类型名 数组名[常量表达式1][常量表达式2]
二维数组的引用:
引用二维数组元素时必须带有两个下标,引用形式如下:
例如:
int a[3][4]; 引用:
- 10点睛Spring4.1-Application Event
wiselyman
application
10.1 Application Event
Spring使用Application Event给bean之间的消息通讯提供了手段
应按照如下部分实现bean之间的消息通讯
继承ApplicationEvent类实现自己的事件
实现继承ApplicationListener接口实现监听事件
使用ApplicationContext发布消息