Stella981 Stella981
3年前
Android low memory killer 机制
Android中,进程的生命周期都是由系统控制的。即使用户在界面上关掉一个应用,切换到了别的应用,那个应用的进程依然是存在于内存之中的。这样设计的目的是为了下次启动应用能更加快速。当然,随着系统运行时间的增长,内存中的进程可能会越来越多,而可用的内存则将会越来越少。AndroidKernel会定时执行一次检查,杀死一些进程,释放掉内存。那么,如何来判断
Wesley13 Wesley13
3年前
Java并发基础05. 传统线程同步通信技术
先看一个问题:有两个线程,子线程先执行10次,然后主线程执行5次,然后再切换到子线程执行10,再主线程执行5次……如此往返执行50次。看完这个问题,很明显要用到线程间的通信了,先分析一下思路:首先肯定要有两个线程,然后每个线程中肯定有个50次的循环,因为每个线程都要往返执行任务50次,主线程的任务是执行5次,子线程的任务是执行10次。线程间通信
Stella981 Stella981
3年前
EventBus3.0详解
写在前面1.前言曾经,一层又一层的业务逻辑让我不知所措,一个又一个的回调让你头晕眼花,一个又一个的参数让你混乱不堪。EventBus,,一个耦合度低到令你害怕的框架。2.什么是EventBusEventBus是一个消息总线,以观察者模式实现,用于简化程序的组件、线程通信,可以轻易切换线程、开辟线程。EventBus3.0跟先前版本的
Wesley13 Wesley13
3年前
ThinkPhp多语言如何实现你了解过吗?
❝最近项目比较忙,就没有怎么写文章。本文主要内容为多语言的后台是如何实现的。❞前言公司需要写一个多语言后台,以前也没做过,于是到面向百度了一下。这是用了TP框架俩年了,第一次发现框架是自带的多语言切换功能。这里着实给点一个赞。接下来我们来实现一下这个功能。一、后台实现多语言使用框架为
Stella981 Stella981
3年前
Android memory leaks(摘抄)
至少在TMobileG1上Android应用在堆上分配的内存大小被限制16MB以内。对于手机来说,这是个不小的内存,但是这仍然远远不能满足一些开发者的需求。但是,即使你不打算使用所有的内存空间,你也应该尽可能地少用内存,从而使得其他应用能够运行而不是被杀掉。因为Android能够在内存中保持的应用越多,那么用户切换应用的速度就会越快。作为我工作的一部分,
Easter79 Easter79
3年前
TOP100summit:【分享实录
王洋:猫眼电影商品业务线技术负责人、技术专家。主导了猫眼商品供应链和交易体系从0到1的建设,并在猫眼与美团拆分、与点评电影业务融合过程中,从技术层面保障了商品业务的平稳切换,同时也是美团点评《领域驱动设计》课程的讲师。在加入猫眼电影之前,曾就职于蚂蚁金服,参与了阿里网商银行从0到1的建设,以及支付宝钱包、花呗等产品的研发。导读:互联网电影行业在2016年
Stella981 Stella981
3年前
Bash 的4种运行模式
1.在日常使用bash的过程中,老是会遇见通过ssh连接到服务器产生环境变量不可用。命令不存在,是不是让人有点懊恼。2.还有就是在登录Armbian的时候会有串数据提示,但是在切换用户后并没有这种提示。是如何做到的呢?上面的问题都是由bash的运行模式的不同带来的现象。4种模是由2种状态的交叉组合而成。interactive和noninte
Stella981 Stella981
3年前
Node.js 应用故障排查手册 —— 利用 CPU 分析调优吞吐量
楔子在我们想要新上线一个Node.js应用之前,尤其是技术栈切换的第一个Node.js应用,由于担心其在线上的吞吐量表现,肯定会想要进行性能压测,以便对其在当前的集群规模下能抗住多少流量有一个预估。本案例实际上正是在这样的一个场景下,我们想要上线Node.js技术栈来做前后端分离,那么刨开后端服务的响应QPS,纯使用Node.js
Wesley13 Wesley13
3年前
Java 基础夺命连环16问(面试硬核敲门砖 )
说说进程和线程的区别?进程是程序的一次执行,是系统进行资源分配和调度的独立单位,他的作用是是程序能够并发执行提高资源利用率和吞吐率。由于进程是资源分配和调度的基本单位,因为进程的创建、销毁、切换产生大量的时间和空间的开销,进程的数量不能太多,而线程是比进程更小的能独立运行的基本单位,他是进程的一个实体,可以减少程序并发执行时的时间和空间开销,
爬虫时“封IP”试试这个方法
我想很多会爬虫技术的小伙伴有给别人写爬虫软件赚外快的经历,小编也不例外。有时候就会遇到粉丝在后台留言,问:大佬,运行你的爬虫程序怎么报错了?于是我让他把报错信息发过来,看过之后一声叹息。多数爬虫源码运行的报错都是由于访问目标网站过于频繁,从而导致目标网站返回错误或者没有数据返回。这也是最常见的方式,也就是我们经常听到的“封IP”,需要不断地切换IP访问。