小米和华为手机底层差距咋这么多? 跑 300 个线程就 OOM?

2018-11-23 14:04:14 +08:00
 zhuifeng1017

小米和华为手机底层差距咋这么多。 我的一个 Android APP,在华为上跑 300 个线程就 OOM 了,而相同配置的小米机器上跑 2000 个线程也不会 OOM ?

28713 次点击
所在节点    Android
158 条回复
est
2018-11-23 18:40:12 +08:00
@yukiww233 唉。水厂太不要脸了。
est
2018-11-23 18:40:46 +08:00
@nicevar 小米 512m 包括低端机不
nicevar
2018-11-23 18:45:18 +08:00
@est 肯定不包括低端机,低端机大多数限制 256m,我都怀疑楼主是华为的人故意来消遣 v 站的华为黑,其实就是每个进程的最大内存限制不同而已,与硬件配置没啥关系,build rom 的时候限制了,用 getprops 看一下两台设备的 heapsize 就清楚了,华为很多高端设备也是限制 256m,这个做法也没啥
XinLake
2018-11-23 18:54:10 +08:00
heapsize 限制不一样也不会这么大差别吧,难道芯片缺陷?
apeshit
2018-11-23 18:55:28 +08:00
@nicevar 请问 HeapSize 和 线程数的关系?
ChrisTsai
2018-11-23 18:58:49 +08:00
@zhuifeng1017 #60 没什么意义,谁说的 500 个请求必须得开 500 条线程?开 50 条线程每条线程并发 10 条请求不可以?我猜只是华为人为限制一个 APP 不允许有这么多线程罢了,和底层性能无关。
23f0baf3
2018-11-23 19:00:30 +08:00
怕是乱改了系统主动限制线程吧,尽管我觉得限制挺合理的。正常程序不需要开 500 个。。。华为总是喜欢乱魔改,内核还禁用了 ptrace,导致很多修改器之类的不能用。。。
关于扫描器,当然是用 raw socket,发完包直接停止,握手都不要完成最快了,当然可能要 root,建议参观成熟的扫描器实现 nmap,zmap。需求简单的话 termux 直接装个 nmap 也很方便。
bkmi
2018-11-23 19:01:15 +08:00
@apeshit 我怀疑 @nicevar 就只知道 heapsize 了,jvm 内除了程序计数器之外,方法区、堆、栈等等都有可能抛出 OOM,每个地方配置不一样都有可能造成差异
pwrliang
2018-11-23 19:01:34 +08:00
每个线程都有独立的 Stack,难道不是 Stack size 的问题?
niketwo
2018-11-23 19:02:35 +08:00
我华为手机有问题我还不能说啊!“敢说华为有问题,是不是要叛国啊!(一脚踢飞)”
ChrisTsai
2018-11-23 19:02:36 +08:00
@pwrliang #69 linux 的 stack,在你没有使用的时候,是虚拟内存,并不占用实际内存。
mumujun
2018-11-23 19:06:07 +08:00
亏这是 v2ex,要是别的网站你早就水军缠身了
XinLake
2018-11-23 19:06:39 +08:00
抛开 JVM 不说。要是底层 c 代码线程数差别这么大,这芯片就有特点了。

可惜我没机器式不了
zhangdawei
2018-11-23 19:09:48 +08:00
@di1012 哈哈哈哈哈哈哈哈
longbye0
2018-11-23 19:09:53 +08:00
这个标题有主语不清的问题
FenGuWu
2018-11-23 19:13:39 +08:00
钓鱼贴无疑。题主的信息太少了。好比:博尔特跑的比乔丹快。所以博尔特是运动能力更强的那个。显然比较不能这么比。
XinLake
2018-11-23 19:16:50 +08:00
轿车都能跑到 200 公里,有的还能跑更多,华为产的只能跑 30 公里,这个值得怀疑啊
zhuifeng1017
2018-11-23 19:17:34 +08:00
@FenGuWu , 哈哈,你是不是看到小米和华为放一起就要干架的感觉。你知道啥是 OOM 么?👎
feverzsj
2018-11-23 19:18:04 +08:00
因为华为就是烂呀,这么简单的道理都不懂?
nicevar
2018-11-23 19:22:10 +08:00
@bkmi 你不用怀疑我了,我倒是觉得你先了解一下 heapsize 限制更好点

这是一个专为移动设备优化的页面(即为了让你能够在 Google 搜索结果里秒开这个页面),如果你希望参与 V2EX 社区的讨论,你可以继续到 V2EX 上打开本讨论主题的完整版本。

https://www.v2ex.com/t/510745

V2EX 是创意工作者们的社区,是一个分享自己正在做的有趣事物、交流想法,可以遇见新朋友甚至新机会的地方。

V2EX is a community of developers, designers and creative people.

© 2021 V2EX