Linux进程间通信之POSIX信号量
当多个进程同时访问系统上的某个资源的时候,就需要考虑进程的同步问题,以确保任一时刻只有一个进程可以拥有对资源的独占式访问。POSIX信号量不仅可以用于进程之间的同步,也可以用于线程之间的同步。 概述 SUSv3规定了两种类型的POSIX信号量。 命名信号量:这种信号量拥有一个名字。通过使用相同的名字调用sem_open(),不相关的进程能够访问同一个信号量。...
View Article优雅设计封装基于Okhttp3的网络框架(五):多线程、单例模式优化 及 volatile、构建者模式使用解析
关于多线程下载功能,前四篇博文所讲解内容已经实现,接下来需要对代码进行优化。开发一个新功能并不复杂,难的是考虑到代码的扩展性和解耦性,后续需要进行的bug修复、完善功能等方面。此篇内容主要讲解代码优化,将从线程优化、单例优化、设计优化这三个方面进行讲解。 此篇内容将涉及到以下知识: 线程优化及Linux系统中线程调度介绍 Android中常用的5种单例模式解析...
View ArticleAndroid 开源之StickyHeaderListView 标题渐变、吸附悬停、筛选分类、动态头部
StickyHeaderListView 是基于实际需求做出的灵活可定制的UI功能,具体实现功能如下: 一、支持无限循环的广告位。 二、高度可动态配置的Header2和Header3(使用GridView实现)。 三、主要功能:分类、排序和筛选布局滑动到顶部后吸附、悬停。 四、自定义FilterView筛选控件,支持动画显示与动画隐藏。 五、支持标题栏背景颜色渐变、字体颜色渐变。...
View ArticleReact Native 中的JSX学习
JSX是什么 字面上来看JSX即 JavaScript XML取首字母结合,所以JSX并不是一门新语言,仅仅是个语法糖。 React发明了JSX,利用HTML语法来创建虚拟DOM。当遇到<,JSX就当HTML解析,遇到{就当JavaScript解析。 我们在浏览器运行的时候,JSX语法会通过Babel转换成浏览器认识的JS。...
View ArticleFlutter进阶—自定义主题风格
质感设计的Theme类将主题应用于后代控件,主题描述了应用程序的颜色和排版选择。后代控件使用Theme.of获取当前主题的ThemeData对象,当控件使用Theme.of时,如果主题稍后更改,则会自动重建,以便可以应用更改。我们可以通过Theme.of查看当前应用程序的配色方案。 class _MyHomePageState extends State<MyHomePage> {...
View ArticleAndroid性能优化总结
转载注明出处:http://blog.csdn.net/xiaohanluo/article/details/76546209 1. 缘由 Android系统每隔16ms发出VSYNC信号,对UI进行渲染,如果每次渲染都成功,就能够达到流畅的画面所需要的60fps,为了能够实现60fps,这意味着程序的大多数操作都必须在16ms内完成,时间超出16ms越多,丢的帧就越多。...
View Article优雅设计封装基于Okhttp3的网络框架(六):HttpHeader接口设计实现 及 Response、Request封装实现
到目前为止,多线程下载功能设计、编写、优化工作已经完成,但是网络框架编写工作并没有完成,此篇将完成Http核心架构,编写的新功能还是围绕在http请求上,涉及到的知识点: httpHeader的接口定义和实现 http请求头和响应头访问编写 http状态码定义 http中的 response封装、request接口封装和实现...
View ArticleAndroid WebView简要介绍和学习计划
我们通常会在App的UI中嵌入WebView,用来实现某些功能的动态更新。在4.4版本之前,Android WebView基于WebKit实现。不过,在4.4版本之后,Android WebView就换成基于Chromium的实现了。基于Chromium实现,使得WebView可以更快更流畅地显示网页。本文接下来就介绍Android...
View ArticleAndroid WebView加载Chromium动态库的过程分析
Chromium动态库的体积比较大,有27M左右,其中程序段和数据段分别占据25.65M和1.35M。如果按照通常方式加载Chromium动态库,那么当有N个正在运行的App使用WebView时,系统需要为Chromium动态库分配的内存为(25.65 + N x...
View ArticleAndroid WebView执行GPU命令的过程分析
Android WebView使用的Chromium引擎,虽然没有自己的GPU进程或者线程,但是却可以执行GPU命令。原来,Android WebView会给它提供一个In-Process Command Buffer GL接口。通过这个接口,Chromium引擎就可以将GPU命令提交给App的Render Thread执行。本文接下来就详细分析Android...
View ArticleAndroid WebView硬件加速渲染网页UI的过程分析
Android WebView作为App UI的一部分,当App UI以硬件加速方式渲染时,它也是以硬件加速方式渲染的。Android WebView的UI来自于网页,是通过Chromium渲染的。Chromium渲染网页UI的机制与Android App渲染UI的机制是不一样的。不过,它们会一起协作完成网页UI的渲染。本文接下来就详细分析Android...
View Articleandroid ndk 02 C语言 二级指针 指针运算 指针与数组
c函数速查: https://pan.baidu.com/s/1sllYdul 通过几个例子 复习 二级指针 指针的运算 指针与数组 函数指针 练习 指针为什么要有类型 指针和地址的区别, 指针有类型 地址没有类型. #include <stdio.h> #include <stdlib.h> #include <Windows.h> #include...
View ArticleAndroid Studio打包,生成jks密钥,签名Apk,多渠道打包
生成jks签名文件 选择Build > Generate Signed APK… 选择项目app > Next 选择Create new… 选择签名文件的路径,这些信息和eclipse一样了,填完点击OK 选择Next 我们这里做测试选择qihu360和xiaomi打包release版,最后点击Finish 等待生成 生成完毕提示我们查看,选择在文件夹查看...
View ArticleAndroid面试题基础集锦《一》
深圳华谷网络技术有限公司 10道题值得思考 第一道题 1、Android 数据存储方式分为哪几种? SharedPreferences存储数据 2. CotentProvider内容提供者 3. 文件存储 4. 数据库存储(Sqlite) 5.网络存储 2. NDK是什么? 1. 一系列工具类的集合 2. Arm指令集 3....
View Article一起Talk Android吧(第三十四回:Android中的Activity六)
各位看官们,大家好,上一回中咱们说的是Android中Activity的例子,这一回咱们继续说该例子。闲话休提, 言归正转。让我们一起Talk Android吧! 看官们,我们在前面章回中介绍了Activity的状态和各个状态的变换,在本章回中我们继续来说Activity的生命周期。Activity的生命周期看上去是一个整体,其实可以对它进行详细的划分,我们可以将其分为三个小的部分: 完整生命周期...
View Article一起Talk Android吧(第三十五回:Android中的Activity七)
各位看官们,大家好,上一回中咱们说的是Android中Activity的例子,这一回咱们继续说该例子。闲话休提, 言归正转。让我们一起Talk Android吧!...
View Article58 同城 Android 端 HTTPS 实践之旅
自 WWDC 2016 苹果传递出从 2017 年 1 月起强制启用应用程序安全传输协议(App Transport Security)的信号,各大厂均开始了 HTTPS 化的征程。虽然目前苹果将此计划延期,但 HTTPS 协议已经在各大厂开花结果。 前言 HTTPS 协议是以 SSL 协议为基础的安全版 HTTP 协议,好处不言自明,即为安全。对于用户来说,HTTPS...
View Article