Wesley13 Wesley13
3年前
java NIO原理及通信模型
JavaNIO是在jdk1.4开始使用的,它既可以说成“新IO”,也可以说成非阻塞式I/O。下面是javaNIO的工作原理:由一个专门的线程来处理所有的IO事件,并负责分发。事件驱动机制:事件到的时候触发,而不是同步的去监视事件。线程通讯:线程之间通过wait,notify等方式通讯。保证每次上下文切换
Wesley13 Wesley13
3年前
java通过ServerSocket与Socket实现通信
首先说一下ServerSocket与Socket.1.ServerSocketServerSocket是用来监听客户端Socket连接的类,如果没有连接会一直处于等待状态.ServetSocket有三个构造方法:(1)ServerSocket(intport);这个使用指定的端口
Ustinain Ustinain
4年前
利用CreateRemoteThread( ) 实现远程线程注入
前言首先想法是强制创建一个目标进程的线程,把我自己的恶意DLL加载进去被注入的DLL拥有目标进程内存的访问权限,所以我们可以通过该向某个进程注入DLL时的方法主要有以下三种:•创建远程线程(CreateRemoteThread()API)•使用注册表(AppInitDLLs值)•消息钩取(SetWindowsHookEx())小试牛刀目前尝试第一
简
4年前
深度剖析APP保活案例
这是作者在去年处理的一个关于进程保活的案例一.引言1.1保活概述什么是保活?保活就是在用户主动杀进程,或者系统基于当前内存不足状态而触发清理进程后,该进程设法让自己免于被杀的命运或者被杀后能立刻重生的手段。保活是”应用的蜜罐,系统的肿瘤“,应用高保活率给自己赢得在线时长,甚至做各种应用想做而用户不期望的行为,给系统带来的是不必要的耗电,以及系统额外的性
Stella981 Stella981
3年前
Android low memory killer 机制
Android中,进程的生命周期都是由系统控制的。即使用户在界面上关掉一个应用,切换到了别的应用,那个应用的进程依然是存在于内存之中的。这样设计的目的是为了下次启动应用能更加快速。当然,随着系统运行时间的增长,内存中的进程可能会越来越多,而可用的内存则将会越来越少。AndroidKernel会定时执行一次检查,杀死一些进程,释放掉内存。那么,如何来判断
Stella981 Stella981
3年前
Datacom基本架构
Datacom基本架构显示界面数据结构对点函数CheckLink函数通信与STS进行共享内存交流与DCS通信显示界面!基本界面(https://imgblog.csdnimg.cn/20201019170528613.png?xossp
Wesley13 Wesley13
3年前
View动画和Drawable动画
View动画你可以使用view动画系统执行Views的补间动画。补间动画通过诸如起始点,终止点,大小,旋转,和一个动画其他通用的aspects等信息来计算动画。一个补间动画可以在一个View对象的内容上执行一系列简单的变换(位置,大小,旋转,透明度)。因此,如果你有一个TextView(https://www.oschina.net
Wesley13 Wesley13
3年前
Java线程与多线程
1线程与多线程1.1线程是什么?线程(Thread)是一个对象(Object)。用来干什么?Java线程(也称JVM线程)是Java进程内允许多个同时进行的任务。该进程内并发的任务成为线程(Thread),一个进程里至少一个线程。Java程序采用多线程方式来支持大量的并发请求处理,程序如果在
Wesley13 Wesley13
3年前
Java 内存模型基础
一、并发编程模型的两个关键问题1\.线程之间如何通信通信是指线程之间以何种机制来交换信息。在命令式编程中,线程之间的通信机制有两种:共享内存和消息传递。在共享内存的并发模型里,线程之间共享程序的公共状态,通过写读内存中的公共状态进行隐式通信。在消息传递的并发模型里,线程之间没有公共状态,线程之间必须通过发送消息来显式
Wesley13 Wesley13
3年前
C# 实现UDP打洞通信(一)
最近研究了一下网络打洞的相关技术,TCP的方式据说可行性不高,各种困难,因此决定采用UDP(UDP是什么就不解释了)的方式。原理:  我们都知道局域网内的主机想要访问外网的服务器是比较容易的,比如浏览器输入www.baidu.com就可以访问到百度的服务器,但是如果在局域网的主机部署一个服务,让外网的机器进行访问一般是无法访问的,因为外部访问的请求会