正则表达式获取CPU的核数信息
1. 观察CPU文件节点的特征
- 手机的CPU节点的路径:
device:/sys/devices/system/cpu $ ls -al
total 0
drwxr-xr-x 19 root root 0 2022-01-30 13:52 .
drwxr-xr-x 7 root root 0 2022-01-30 13:52 ..
drwxr-xr-x 10 root root 0 2022-01-30 13:52 cpu0
drwxr-xr-x 8 root root 0 2022-02-06 09:36 cpu1
drwxr-xr-x 8 root root 0 2022-02-06 09:36 cpu2
drwxr-xr-x 8 root root 0 2022-02-06 09:36 cpu3
drwxr-xr-x 8 root root 0 2022-02-06 09:36 cpu4
drwxr-xr-x 8 root root 0 2022-02-06 09:36 cpu5
drwxr-xr-x 9 root root 0 2022-02-06 09:36 cpu6
drwxr-xr-x 8 root root 0 2022-02-06 09:36 cpu7
- 路径特征
即都是/sys/devices/system/cpu/下不同名称。cpu0~cpu7分别表示不同的CPU核
/sys/devices/system/cpu/cpu0
/sys/devices/system/cpu/cpu1
/sys/devices/system/cpu/cpu2
/sys/devices/system/cpu/cpu3
/sys/devices/system/cpu/cpu4
/sys/devices/system/cpu/cpu5
/sys/devices/system/cpu/cpu6
/sys/devices/system/cpu/cpu7
- 文件名称特征
如何用字符串表示:cpu0~cpu7的名称特征:可以使用正则式:^cpu\d+
解释如下:
^cpu表示:字符串开头要为cpu
\d+:表示:数字为1个或或1个以上
^cpu\d+表示:字符串开头为cpu,cpu后的字符串要为数字,数字需要存在1个或1个以上
2. 编码
先访问CPU固定路径/sys/devices/system/cpu/,然后统计该路径过滤出符合cpu0~cpu7的名称特征的数量
2.1 demo
package com.sufadi.studyimport androidx.appcompat.app.AppCompatActivity
import android.os.Bundle
import android.util.Log
import java.io.Fileclass MainActivity : AppCompatActivity() {override fun onCreate(savedInstanceState: Bundle?) {super.onCreate(savedInstanceState)setContentView(R.layout.activity_main)Log.d("shz_debug", "getCpuCoreSize: ${getCpuCoreSize()}")}private fun getCpuCoreSize() :Int {var cpuDir = File("/sys/devices/system/cpu/")val regex = Regex("^cpu\\d+$")return cpuDir.listFiles().filter { file ->null != regex.find(file.name)}.size}
}
2.2 运行结果
2022-02-06 10:34:02.444 29651-29651/com.sufadi.study D/shz_debug: getCpuCoreSize: 8
正则表达式获取CPU的核数信息相关推荐
- Android获取cpu和内存信息、网址的代码
android获取手机cpu并判断是单核还是多核 /** * Gets the number of cores available in this device, across all proces ...
- JAVA+MYSQL+CSV用正则表达式获取CPU天梯分数
前言 这是一次补记录,那天接到基友一个临时任务.根据他给的文件,分析并获取CPU天梯榜的分数,然后进行分级. 下面开始我们的思路拆解: 数据处理部分 如果有多份文件,也都是按照这个思路处理. 原始CP ...
- python读取linux内存_使用python获取CPU和内存信息(linux系统)
大家都知道,linux里一切皆为文件,在linux/unix的根目录下,有个/proc目录,这个/proc 是一种内核和内核模块用来向进程(process)发送信息的机制(所以叫做"/pro ...
- python查看物理内存和交换区的统计信息_使用python获取CPU和内存信息的思路与实现(linux系统)...
linux里一切皆为文件,在linux/unix的根文件夹下,有个/proc文件夹,这个/proc 是一种内核和内核模块用来向进程(process)发送信息的机制(所以叫做"/proc&qu ...
- 使用python获取CPU和内存信息的思路与实现(linux系统)
From: http://blog.csdn.net/preterhuman_peak/article/details/40649229 linux里一切皆为文件,在linux/unix的根目录下,有 ...
- Android中shell控制cpu,Android app开发中获取cpu arm架构信息及执行shell命令方法
最近在做一个项目,需要在app开发过程中去判断cpu的arm架构,比如说是armeabi-v7a,或是arm64-v8a. 其实,在adb shell命令下面,可以通过getprop的方式,获取到一些 ...
- go 获取cpu核数
简言 1. go语言提供了强大的runtime库,可以轻松获取系统信息 2. NumCPU()函数可以获取cpu的核数 实验如下图: 代码如下: package main import (" ...
- php 获取cpu,Windows下如何利用PHP获取服务器的CPU和内存参数状态信息
通过生成vbs脚本获取CPU和内存信息. class SystemInfoWindows { /** * 判断指定路径下指定文件是否存在,如不存在则创建 * @param string $fileNa ...
- python3 获取cpu 内存利用率
python通过第三方包psutil来获取cpu和内存信息 1.通过pip安装psutil: pip install psutil 2.获取指定进程的内存/CPU利用率: # 定义一个进程列表 pro ...
最新文章
- 强化学习最新作品:谷歌最新思想、MIT新书推荐、Sutton经典之作!
- python中实例方法与实例属性-Python中的类属性和实例属性以及静态方法和类方法...
- Spring事务 Transaction rolled back because it has been marked as rollback-only
- Linux|UNIX下LAMP环境的搭建及常见问题[连载3]
- 面向对象的4个基本特征
- SAP UI5 Opportunity popup
- Python协程--生成器(实现多任务)
- Verilog HDL语言设计实现过程赋值+译码器
- 2.14 向量化 logistic 回归的梯度输出
- 用bcp实现的存储过程 导整个数据库
- 红帽为开发订阅成员提供的免费福利
- 感觉最近有多个机器人给吾博客评论
- 初学Sockets编程(四) 发送和接收数据
- 【通信】基于matlab GUI循环码编译码器【含Matlab源码 692期】
- 计算机cmd查询ip地址,cmd查ip地址(cmd命令查看别人的ip)
- 【Windows】VMware虚拟机安装Windows 10 教程
- 查看本地计算机ip命令,查看你本机的IP信息的命令ipconfig详解【图】
- 蚂蚁金服技术90后:从艺术转投数学,还出版首本TensorFlow中文教材
- 人行各地中支征信服务“再升级”
- Vision-and-Language Navigation: Interpreting visually-grounded navigation instructions in real env