系统环境:linux:ubuntu18已配置jdk 环境变量 切换到root账户sudo su 安装Android-sdk(0)准备工作  切换到/usr/local目录:  /usr/local:用户级程序目录,可以理解为C:/Progrem Files/。用户自己编译软件默认会安装到这个目录下。cd /usr/local新建android-home文件夹,用来存放and
转载 2024-09-30 17:30:54
60阅读
本文介绍Android中Intent各种常见作用。1 Intent.ACTION_MAIN String: android.intent.action.MAIN 标识Activity为一个程序开始。比较常用。 Input:nothing Output:nothing 2 Intent.Action_CALL Stirng: android.intent.action.CALL 呼叫指定电话号
转载 2023-12-04 20:17:39
7阅读
JVM中垃圾回收内存区域主要指堆。虽然HotSpot对方法区也会进行垃圾回收,但是不在JVM规范里。通过垃圾回收调优,尽可能减少垃圾回收次数和时间,是我们目标。垃圾收集器需要完成两部分工作:判断对象是否存活和回收内存。判断对象是否存活JVM从所有GCRoot对象出发,遍历他们引用对象。没被遍历到对象表示已经死亡。 GCRoot对象包括:虚拟机栈中引用到对象本地方法栈中引用到对象方法
转载 2023-07-12 15:22:33
50阅读
那天去面试,面试官问我JVM垃圾回收,我是有备而来,上来就是一个可达性分析算法,然后就是一个复制算法,标记-清理,标记-整理,以及几个常见垃圾回收器  按照传统面试,我已经回答完了,面试官突然问我GC Root有哪些? 不是存活有依赖都可以做GC Root吗?我大意了,回答不是很好,所以今天来整理一下。 在Java语言中,GC Root主要包括以下几类元素:1、虚拟机栈中引用
转载 2023-11-08 00:35:28
210阅读
Java GCroot是Java垃圾回收机制中一个重要概念,GCroot是指在内存中没有被回收对象根对象,只有通过这些根对象才能访问到其他对象。理解GCroot以及如何妥善解决相关问题,对于Java开发者来说是相当重要。接下来我们将探讨如何定位和解决Java GCroot问题。 ### 背景定位 我们从一个具体**问题场景**谈起。假设在某个高并发Spring Boot应用中,随
原创 6月前
26阅读
虚拟机栈(栈帧中本地变量表)中引用对象 方法区中类静态属性引用对象 方法区中常量变量引用对象 本地方法栈中JNI(即一般说Native方法)引用对象 活跃线程引用对象 ...
转载 2021-09-21 14:58:00
158阅读
2评论
# Java GC Root 标记机制解析 在 Java 内存管理中,垃圾回收(Garbage Collection,GC)是一个至关重要部分。GC 主要工作是自动管理内存,避免内存泄漏和过度使用。Java 中一个关键概念是“GC Root”,它是垃圾回收起始点,帮助 JVM 判断哪些对象可以被回收。本文将介绍 GC Root 标记过程,并提供相关代码示例和流程图。 ## 什么是
原创 7月前
49阅读
本文导读本文通过抛出一个编程上帝视角问题,我们了解什么是编程上帝视角,编程如何学习以及编程root是什么,找到root之后,我们有如何利用上帝视角去解决编程中推理。一、编程上帝视角上帝视角乃是叙述视角中,第三人称叙述者如同无所不知上帝,能够以非现实方式不受限制描述任何事物,操控者一切,监视着一切,想没想过,如果你打开了编程世界上帝视角,会干嘛?这将意味着: 1、学习将不区分语言
原创 2023-01-31 09:12:46
97阅读
# 理解 JavaScript 中 GC Root 链 ## 引言 在 JavaScript 中,内存管理是一个十分重要概念。我们在编写代码时,需要理解如何管理对象生命周期,以及如何避免内存泄露。GC(垃圾回收)是一种自动化内存管理机制。其中,GC Root 链(或称为根链)是理解垃圾回收机制关键。本文将带你一步一步地解读这一概念,以及如何在 JavaScript 中实现它基本原理
javascript目前看来仍是世界上最流行语言,不管在web、服务端还是客户端都有广泛应用,很多跨平台方案也采用js来实现,比如著名reactjs,苹果在iOS7引入了javascriptcore库,提供更简单方便方式将js接入,iOS7之前要执行js操作只能通过UIWebview中 stringByEvaluatingJavaScriptFromString方法,而且Java
转载 2023-06-06 12:37:05
85阅读
最近发生了一些C#程序运行时一些问题,发现是GC导致问题,然后稍微研究了一下GC,因为知道JavaGC要比.NET稍微复杂一点,所以我觉得要是能弄懂JavaGC原理,对.NETGC理解也能更深入一些。所以把研究到整理做了个笔记,以免以后忘记。 什么样对象会被GC判定要回收对象:可达性分析算法来判断一个对象是否需要回收。基本思想是通过称为“GC Roots”对象作为起
转载 2024-10-19 19:21:59
35阅读
看到一个老问题,Java是如何判定回收哪些对象? 答:从gcRoot根搜索不可达,且标记清理一次之后仍没有被复活对象,会被认定为垃圾对象进行清理。注意在Java中没有对象作用域,只有对象引用作用域。Java垃圾回收没有采用引用计数算法,因为它不好解决循环引用问题。Java垃圾算法实际上是标
转载 2018-05-03 12:57:00
183阅读
2评论
一、基础概念根节点: 1、栈中引用对象; 2、方法区中静态成员或者常量引用对象(全局对象); 3、JNI方法栈中引用对象;可达性分析(Reachability Analysis):从根节点开始向下搜索,搜索所走过路径称为引用链。当一个对象到根节点有引用链相连时,则证明此对象是可达对象;可复活对象:在finalize()方法中复活对象;不可达对象:既没有引用链又不可复活对象,称之为不
什么是Category类别是Objective-C一项功能,可扩展类接口,而无需对类进行子类化。category 可以为已经存在类增加方法,而不需要增加一个子类。而且,我们可以在不知道某个类内部实现情况下,为该类增加方法。和子类不同是,Category不能用于向被扩展类添加实例变量,所以Category通常作为一种组织框架代码工具来使用。如果我们想增加某个框架(framework)中
一、选择题(每题5分,共20分)1、访问修饰符作用范围由大到小是(D)A、 private-default-protected-publicB、 public -default-protected- privateC、 private- protected-default- publicD、public - protected- default-private2、以下(D)不是Object类方法
一、WhatsApp是什么?whatsapp是一款通讯工具,类似微信可以免费给家人,朋友等好友发送和接收信息、图片、音频文件和视频通讯软件;WhatsApp是基于手机号码注册,在注册时候,需要输入手机号码,并接受一条验证短信,然后WhatsApp会搜索你手机联系人中已经在使用的人并自动添加到手机联系人名单里。二、为什么用WhatsApp?WhatsApp作为全球最大社交聊天软件,它主要
xmlns:android是一个XML命名空间,告诉Android开发工具你准备使用Android命名空间里一些通用属性。在所有AndroidXML设 htt
原创 2022-12-09 15:17:41
167阅读
android.app.Application类和Activity,Service一样是Android框架一个系统组件,当Android程序启动时系统会创建一个Application对象,用来存储系统一些信息。package com.example.context;
转载 2023-07-31 11:28:37
74阅读
 如何调优JVM - 优化Java虚拟机(大全+实例) 堆设置 -Xmx3550m:设置JVM最大堆内存 为3550M。 -Xms3550m:设置JVM初始堆内存 为3550M。此值可以设置与-Xmx相同,以避免每次垃圾回收完成后JVM重新分配内存。 -Xss128k: 设置每个线程栈 大小。JDK5.0以后每个线程栈大小为1M
转载 2023-09-20 06:34:18
58阅读
ContentProvider 是 Android 四大组件之一,用于保存和检索数据,是 Android 系统中不同应用程序之间共享数据接口。在 Android 系统中,应用程序之间是相互独立,分别运行在自己进程中,相互之间没有数据交换。若应用程序之间需要共享数据,就要用到 ContentProvider。在 Android 系统手机中,ContentProvider 最典型应用是,当
转载 2023-10-06 19:57:05
62阅读
  • 1
  • 2
  • 3
  • 4
  • 5