一.前言: 一般情况下从TCP服务器读取数据是放在一个线程里读的,但是刷新界面又不得不放在线程外面,所以需要用消息传递把线程里从TCP里获得的数据传送出来,然后根据数据对页面进行相应的刷新. 二.业务逻辑:   这里包含2个layout,第一个用于登陆的(即输入服务器对应的IP和端口号),点击确定进行跳转到相应的监控界面,监控界面包括加热.关闭.和显示温度3个按钮,以及一个用于绘制温度的SurfaceView. 三.详细介绍: 3-1.2个activity介绍: 登陆页面对应的activity,…
因为适配器的getView的返回对象是view, 所以线性布局的对象可以通过addView动态加载适配器的getView 举例: mTestAdapter = new ListAdapter(this); mTestAdapter.addList(wbTest.getTestList()); mLlTestLayout.removeAllViews(); mLlTestLayout.addView(mTestAdapter.getView(0, null, null)); if (wbTest.…
1)动态加载Layout的代码是 getWindow().setContentView(LayoutInflater.from(this).inflate(R.layout.main, null)); 它等同于 setContentView(R.layout.main); 其实 getWindow().setContentView(LayoutInflater.from(this).inflate(R.layout.main, null))  是 setContentView(R.layout.…
1.在目标进程中申请内存 2.向目标进程内存中写入shellcode(没有特征,编码比较麻烦) 3.创建远线程执行shellcode 之前可以看到shellcode很难编写还要去依赖库,去字符串区等等很麻烦,为了让被注入代码更容易编写,最好的方法就是通过dll来编写 dll加载: 1.静态调用:通过在我们的程序中添加头文件,以及lib文件来完成调用,前提就是获取dll然后还有头文件 2.动态调用:仅仅只需要一个dll即可完成调用 先写个试一下 #include <Windows.h> __de…
/文章作者:MG193.7 CNBLOG博客ID:ALDYS4 QQ:3496925334/ 在读者阅读本文章前,建议先阅读笔者之前写的一篇对安卓载荷的分析文章 [逆向&编程实战]Metasploit安卓载荷运行流程分析_复现meterpreter模块接管shell 0x01 重温载荷运行原理 在笔者之前已经对Metasploit中的安卓载荷(以下简称Payload)进行了分析,已经明确了meterpreter模块如何对中马机下达命令的原理 先重温一遍Payload如何接收远控端发送的数据并执行…
一.布局文件part.xml: <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas.android.com/tools" android:layout_width="match_parent" android:layout_height="match_parent" a…
1.死锁 定义; 类似两个人分别被囚禁在两间房子里,A手上拿着的是B囚禁房间的钥匙,而B拿着A的钥匙,两个人都没法出去,没法给对方开锁,进而造成死锁现象.具体例子代码如下: # -*-coding:utf-8 -*- from threading import Thread,Lock,RLock import time muxeA=Lock() muxeB=Lock() class MyThread(Thread): def run(self): self.func1() self.func2(…
导入so包 这个我只接受测试可用的一种方法 第一步:把so包放在libs目录下,可以是文件夹也可以是单独的一个个so文件 然后在src同级的目录下找到build.gradle文件下如下信息 sourceSets{ main{ jniLibs.srcDirs=['libs'] } }…
目录 python day 20: 线程池与协程 2. 线程 3. 进程 4. 协程:gevent模块,又叫微线程 5. 扩展 6. 自定义线程池 7. 实现多进程TCP服务器 8. 实现多线程TCP服务器 9. 协程greenlet和gevent python day 20: 线程池与协程 2019/11/1 资料来自老男孩教育 2. 线程 线程适用于IO密集流操作,线程是最小的执行单元 线程之间数据是共享的,共用一块内存 import threading :导入线程模块 t = thread…
MINA.Netty.Twisted为什么放在一起学习?首先,不妨先分别看一下它们官方网站对其的介绍: MINA: Apache MINA is a network application framework which helps users develop high performance and high scalability network applications easily. It provides an abstract event-driven asynchronous AP…