- 顾名思义,AndroidEventBus是一个Android平台的事件总线框架,它简化了Activity、Fragment、Service等组件之间的交互,很大程度上降低了它们之间的耦合,使我们的代码更加简洁,耦合性更低,提升了我们的代码质量。但它能做的却不仅限于这些。经过定制,它能完成很多有意思的功能,那么究竟该怎么做呢?就让我们一起往下看吧。 ... 顾名思义,AndroidEventBus是一个Android平台的事件总线框架,它简化了Activity、Fragment、Service等组件之间的交互,很大程度上降低了它们之间的耦合,使我们的代码更加简洁,耦合性更低,提升了我们的代码质量。但它能做的却不仅限于这些。经过定制,它能完成很多有意思的功能,那么究竟该怎么做呢?就让我们一起往下看吧。 ...
- 互斥对象、事件对象、关键代码段 一、互斥对象和事件对象属于内核对象,利用内核对象进行线程同步,速度较慢,但 可以实现在多个进程中各线程间进行同步。 二、关键代码段式工作在用户方式下,同步速度较快,但在使用关键代码段时,很容易进入死锁状态,因为在进入关键代码时无法设定超时值。 MFC下InitializeCriticalSection()和DeleteCr... 互斥对象、事件对象、关键代码段 一、互斥对象和事件对象属于内核对象,利用内核对象进行线程同步,速度较慢,但 可以实现在多个进程中各线程间进行同步。 二、关键代码段式工作在用户方式下,同步速度较快,但在使用关键代码段时,很容易进入死锁状态,因为在进入关键代码时无法设定超时值。 MFC下InitializeCriticalSection()和DeleteCr...
- 1 系统调用 操作系统的进程空间分为用户空间和内核空间,操作系统内核直接运行在硬件上,提供设备管理、内存管理、任务调度等功能,我们用户空间不能直接调用,所以就有了系统调用(运行在用户空间的程序向操作系统内核请求需要更高权限运行的服务),系统调用提供用户程序与操作系统之间的接口。用户空间通过API请求内核空间的服务来完成其功能——内核提供给用户空间的这些API, 就是系统调用... 1 系统调用 操作系统的进程空间分为用户空间和内核空间,操作系统内核直接运行在硬件上,提供设备管理、内存管理、任务调度等功能,我们用户空间不能直接调用,所以就有了系统调用(运行在用户空间的程序向操作系统内核请求需要更高权限运行的服务),系统调用提供用户程序与操作系统之间的接口。用户空间通过API请求内核空间的服务来完成其功能——内核提供给用户空间的这些API, 就是系统调用...
- 大家众所周知,IntentService内置的handler只有一个线程,而AsyncTask又只适合时间至多几秒的操作,所以我们关注使用ExecutorService建立并行执行。为了确保Service一直保持活跃状态,需要调用Service.startForeground()方法。由于Service.startForeground()和Service.stopForegr... 大家众所周知,IntentService内置的handler只有一个线程,而AsyncTask又只适合时间至多几秒的操作,所以我们关注使用ExecutorService建立并行执行。为了确保Service一直保持活跃状态,需要调用Service.startForeground()方法。由于Service.startForeground()和Service.stopForegr...
- 在开发中我们有时会有这样的需求,即在固定的每隔一段时间执行某一个任务。比如UI上的控件需要随着时间改变,我们可以使用Java为我们提供的计时器的工具类,即Timer和TimerTask。 Timer是一个普通的类,其中有几个重要的方法;而TimerTask则是一个抽象类,其中有一个抽象方法run(),类似线程中的run()方法,我们使用Timer创建一个他的对象... 在开发中我们有时会有这样的需求,即在固定的每隔一段时间执行某一个任务。比如UI上的控件需要随着时间改变,我们可以使用Java为我们提供的计时器的工具类,即Timer和TimerTask。 Timer是一个普通的类,其中有几个重要的方法;而TimerTask则是一个抽象类,其中有一个抽象方法run(),类似线程中的run()方法,我们使用Timer创建一个他的对象...
- 1、介绍ThreadLocal 看安卓源码的时候,在这个类Looper.java ,会有这个一句函数 static final ThreadLocal<Looper> sThreadLocal = new ThreadLocal<Looper>(); 一开始我不是很懂ThreadLocal.java这个类,简单理解  ... 1、介绍ThreadLocal 看安卓源码的时候,在这个类Looper.java ,会有这个一句函数 static final ThreadLocal<Looper> sThreadLocal = new ThreadLocal<Looper>(); 一开始我不是很懂ThreadLocal.java这个类,简单理解  ...
- 1 ThreadLocal接口出现原因 使用ThreadLocal保存当前线程的变量值,这样你想获取该变量的值的时候,获取到的都是本线程的变量值,不会获取到其他线程设置的值,早在JDK 1.2的版本中就提供java.lang.ThreadLocal,ThreadLocal为解决多线程程序的并发问题提供了一种新的思路。使用这个工具类可以很简洁地编写出优美的多线程程序... 1 ThreadLocal接口出现原因 使用ThreadLocal保存当前线程的变量值,这样你想获取该变量的值的时候,获取到的都是本线程的变量值,不会获取到其他线程设置的值,早在JDK 1.2的版本中就提供java.lang.ThreadLocal,ThreadLocal为解决多线程程序的并发问题提供了一种新的思路。使用这个工具类可以很简洁地编写出优美的多线程程序...
- 问题: 因为做的截屏拍照是跨进程通信的,所以需要用aidl,但是参数传递用的byte[] image,网上查了下aidl传递的基本参数类型,没有byte[], 然后把图片转化成String,结果时候接受得到有时候接受不到,不知道什么原因,然后其它传递参数又可以与服务... 问题: 因为做的截屏拍照是跨进程通信的,所以需要用aidl,但是参数传递用的byte[] image,网上查了下aidl传递的基本参数类型,没有byte[], 然后把图片转化成String,结果时候接受得到有时候接受不到,不知道什么原因,然后其它传递参数又可以与服务...
- 1 问题 在我们服务端,我们怎么查看哪些进程在使用某一个so 2 解决办法 lsof **.so 很明显,我们的apache的httpd几个进程在使用这个so 1 问题 在我们服务端,我们怎么查看哪些进程在使用某一个so 2 解决办法 lsof **.so 很明显,我们的apache的httpd几个进程在使用这个so
- 0、Android系统启动 《Android系统启动流程 -- bootloader》 《The Android boot process from power on》 《Android 启动过程介绍》 《Android培训班(86)内核运行之前的引导程序》 这是一系列文章 《Android 分区挂载》 1、init 《深入理解android 卷... 0、Android系统启动 《Android系统启动流程 -- bootloader》 《The Android boot process from power on》 《Android 启动过程介绍》 《Android培训班(86)内核运行之前的引导程序》 这是一系列文章 《Android 分区挂载》 1、init 《深入理解android 卷...
- 本文目录 前言isolateevent loop线程模型与isolate创建单独的isolateStream事件流 前言 说到网络,就一定会提到异步编程。对于涉及网络的操作,在客户端的开发中都是通过异步实现的。在Flutter里,异步是用Future来修饰的,并且运行在event loop里。 Flutter的异步特性和Android的Looper... 本文目录 前言isolateevent loop线程模型与isolate创建单独的isolateStream事件流 前言 说到网络,就一定会提到异步编程。对于涉及网络的操作,在客户端的开发中都是通过异步实现的。在Flutter里,异步是用Future来修饰的,并且运行在event loop里。 Flutter的异步特性和Android的Looper...
- 作者丨Gemfield@@知乎 https://zhuanlan.zhihu.com/p/61765561 https://zhuanlan.zhihu.com/p/65822256 PyTorch的动态图(上) 背景 PyTorch的动态图框架主要是由torch/csrc/autograd下的代码实现的。这个目录下定义了3个主要的基类:Variable、... 作者丨Gemfield@@知乎 https://zhuanlan.zhihu.com/p/61765561 https://zhuanlan.zhihu.com/p/65822256 PyTorch的动态图(上) 背景 PyTorch的动态图框架主要是由torch/csrc/autograd下的代码实现的。这个目录下定义了3个主要的基类:Variable、...
- 平台 内核版本 安卓版本 RK3399 Linux4.14 Android7.1 =>返回专栏总目录<= 文章目录 一、如何在Linux kernel代码中获取当前进程的信息 二、tark_struct的定义 一、如何在Linux kernel代码中获取当前进程的信息 ... 平台 内核版本 安卓版本 RK3399 Linux4.14 Android7.1 =>返回专栏总目录<= 文章目录 一、如何在Linux kernel代码中获取当前进程的信息 二、tark_struct的定义 一、如何在Linux kernel代码中获取当前进程的信息 ...
- @Author:Runsen @Date:2019/11/07 作者介绍:Runsen目前大三下学期,专业化学工程与工艺,大学沉迷日语,Python, Java和一系列数据分析软件。导致翘课严重,专业排名中下。.在大学60%的时间,都在CSDN。决定今天比昨天要更加努力。 我预计写零基础学Java写到一百篇,这是第三十一篇,慢慢来,毕业前需要搞定。 ... @Author:Runsen @Date:2019/11/07 作者介绍:Runsen目前大三下学期,专业化学工程与工艺,大学沉迷日语,Python, Java和一系列数据分析软件。导致翘课严重,专业排名中下。.在大学60%的时间,都在CSDN。决定今天比昨天要更加努力。 我预计写零基础学Java写到一百篇,这是第三十一篇,慢慢来,毕业前需要搞定。 ...
- @Author:Runsen @Date:2019/10/18 作者介绍:Runsen目前大三下学期,专业化学工程与工艺,大学沉迷日语,Python, Java和一系列数据分析软件。导致翘课严重,专业排名中下。.在大学60%的时间,都在CSDN。决定今天比昨天要更加努力。 我预计写零基础学Java写到一百篇,这是第三十篇,慢慢来,毕业前需要搞定。 文... @Author:Runsen @Date:2019/10/18 作者介绍:Runsen目前大三下学期,专业化学工程与工艺,大学沉迷日语,Python, Java和一系列数据分析软件。导致翘课严重,专业排名中下。.在大学60%的时间,都在CSDN。决定今天比昨天要更加努力。 我预计写零基础学Java写到一百篇,这是第三十篇,慢慢来,毕业前需要搞定。 文...
上滑加载中
推荐直播
-
基于开源鸿蒙+海思星闪开发板:嵌入式系统开发实战(Day1)
2025/03/29 周六 09:00-18:00
华为开发者布道师
本次为期两天的课程将深入讲解OpenHarmony操作系统及其与星闪技术的结合应用,涵盖WS63E星闪开发板的详细介绍、“OpenHarmony+星闪”的创新实践、实验环境搭建以及编写首个“Hello World”程序等内容,旨在帮助学员全面掌握相关技术并进行实际操作
回顾中 -
基于开源鸿蒙+海思星闪开发板:嵌入式系统开发实战(Day2)
2025/03/30 周日 09:00-12:00
华为开发者布道师
本次为期两天的课程将深入讲解OpenHarmony操作系统及其与星闪技术的结合应用,涵盖WS63E星闪开发板的详细介绍、“OpenHarmony+星闪”的创新实践、实验环境搭建以及编写首个“Hello World”程序等内容,旨在帮助学员全面掌握相关技术并进行实际操作
回顾中 -
从AI基础到昇腾:大模型初探、DeepSeek解析与昇腾入门
2025/04/02 周三 16:00-17:30
不易 / 华为云学堂技术讲师
昇腾是华为研发的AI芯片,其具有哪些能力?我们如何基于其进行开发?本期直播将从AI以及大模型基础知识开始,介绍人工智能核心概念、昇腾AI基础软硬件平台以及昇腾专区,旨在为零基础或入门级学习者搭建从AI基础知识到昇腾技术的完整学习路径。
回顾中
热门标签