E-COM-NET
首页
在线工具
Layui镜像站
SUI文档
联系我们
推荐频道
Java
PHP
C++
C
C#
Python
Ruby
go语言
Scala
Servlet
Vue
MySQL
NoSQL
Redis
CSS
Oracle
SQL Server
DB2
HBase
Http
HTML5
Spring
Ajax
Jquery
JavaScript
Json
XML
NodeJs
mybatis
Hibernate
算法
设计模式
shell
数据结构
大数据
JS
消息中间件
正则表达式
Tomcat
SQL
Nginx
Shiro
Maven
Linux
流程分析
iOS-底层(10):objc_msgSend
流程分析
之慢速查找与消息转发
objc_msgSend慢速查找
流程分析
前一篇我们分析了汇编快速查找,如果没有找到,就会进入CheckMiss或者JumpMiss.macroCheckMiss//missifbucket->sel==
恍然如梦_b700
·
2020-09-27 16:54
objc_msgSend
流程分析
(慢速查找)
在上一篇objc_msgSend
流程分析
(快速查找)中解析了消息的快速查找流程,那有快速肯定就有慢速查找,今天我们就来分析下消息的慢速查找流程objc_msgSend慢速查找流程在快速查找流程中,如果没有找到方法实现
远方竹叶
·
2020-09-25 17:39
方法慢速查找过程分析
前言书接上回objc_msgSend
流程分析
,我们知道了消息发送首先会去cache_t中缓存的方法列表中查找,其实这是方法快速查找的过程,如果缓存中未找到,就会进入慢速查找流程,那么慢速查找的具体流程是怎么处理的呢
深圳_你要的昵称
·
2020-09-25 10:34
objc_msgSend
流程分析
(快速查找)
在上一篇cache_t原理分析分析了cache的写入流程,在写入之前还有cache的读取流程runtimeruntime即我们常说的运行时,是OC底层的一套C/C++的API,编译器最终都会将OC代码转化为运行时代码,我们通过clang-rewrite-objcxxx.m可以看到编译后的.cpp文件。运行时是相对于编译时而言运行时:代码跑起来,被装载到内存中的过程,如果代码有问题,会崩溃,是一个动
远方竹叶
·
2020-09-24 11:56
方法慢速查找
流程分析
慢速查找前提obj_msgsend消息发送在完成汇编缓存快速查找流程后,如果没有找到,说明缓存没有,那么就需要进入到C/C++层进入慢速查找lookUpImpOrForward流程。消息查找过程与isa走位联系消息在查找过程中如果在自己类中没有找到,那么就会去父类找,如果父类还是没有找到就会找到其根源类,如同isa的走位图一般。我们可以通过下面案例演示,首先我们新建一个继承自NSObject的类S
_Luyouli
·
2020-09-23 22:20
objc_msgSend
流程分析
一.什么是Runtime?我们都知道,将源代码转换为可执行的程序,通常要经过三个步骤:编译、链接、运行。不同的编译语言,在这三个步骤中所进行的操作又有些不同。C语言作为一门静态类语言,在编译阶段就已经确定了所有变量的数据类型,同时也确定好了要调用的函数,以及函数的实现。而Objective-C语言是一门动态语言。在编译阶段并不知道变量的具体数据类型,也不知道所真正调用的哪个函数。只有在运行时间才检
灰溜溜的小王子
·
2020-09-23 09:52
objc_msgSend快查找
流程分析
我们知道所有的C代码都会被底层翻译成汇编语言,然后通过编译时再翻译成机器所能识别的语言。汇编里的逻辑是上层的基础,它能直接影响运行的效率,上一节我们谈到runtime的消息转发是通过objc_msgSend来完成的,这次我们再深入到汇编层去逐行看下objc_msgSend的快查找流程。从356行代码开始:359line:cmp在汇编里是做比较的作用,p0指寄存器的第一个位置,这个位置用来存消息接受
福伟_Y
·
2020-09-22 11:38
objc_msgSend
流程分析
前言书接上回cache_t缓存
流程分析
,我们知道方法的最终insert在_buckets(模拟器)或_maskAndBuckets(arm64真机)中,这是方法的存储流程,那么方法的读取流程是怎么样的?
深圳_你要的昵称
·
2020-09-22 01:31
使用阿里云OSS的服务端签名后直传功能的
流程分析
网站一般都会有上传功能,而对象存储服务oss是一个很好的选择。可以快速的搭建起自己的上传文件功能。该文章以使用阿里云的OSS功能为例,记录如何在客户端使用阿里云的对象存储服务。服务端签名后直传背景采用JavaScript客户端直接签名(参见JavaScript客户端签名直传)时,AccessKeyID和AcessKeySecret会暴露在前端页面,因此存在严重的安全隐患。因此,OSS提供了服务端签
·
2020-09-21 11:08
畅购商城(十三):秒杀系统「上」
好好学习,天天向上本文已收录至我的Github仓库DayDayUP:github.com/RobodLee/DayDayUP,欢迎Star
流程分析
上面这张图是整个秒杀系统的流程。
Robod丶
·
2020-09-20 23:00
OC底层原理(三)、isa、对象和类结构、属性粗略分析
OC底层原理汇总从探索isa的初始化开始在OC底层原理(一).alloc实际调用
流程分析
内容最后的流程图中,_class_createInstanceFromZone,我们分为三步:1、size=cls
默默_David
·
2020-09-19 21:11
cache_t 缓存
流程分析
上次面试题答案上回面试题分析最后留了个题,关于class_getMethodImplementation的返回值判断,题目如下voidlgIMP_classToMetaclass(ClasspClass){constchar*className=class_getName(pClass);ClassmetaClass=objc_getMetaClass(className);IMPimp1=cla
深圳_你要的昵称
·
2020-09-19 20:54
OC底层原理汇总
OC底层原理(一).alloc实际调用
流程分析
OC底层原理(二).内存分配与内存对齐OC底层原理(三)、isa、对象和类结构、属性粗略分析lldb常用命令与调试技巧
默默_David
·
2020-09-18 17:41
vue3 源码分析-运行
流程分析
虚拟dom和代理可以参考其他博客,此博客介绍vue3运行流程。方便理解vue的运行流程。一、初次渲染流程constcreateApp=((...args)=>{constapp=ensureRenderer().createApp(...args);{injectNativeTagCheck(app);}const{mount}=app;app.mount=(containerOrSelector
鸠为天下
·
2020-09-18 15:22
js
vue
vue
proxy
dom
nova boot代码
流程分析
(二):nova-scheduler主机选择
本篇文章将分析nova-scheduler服务在创建VM时如何进行主机的选择。完整来说,nova-scheduler主机选择的过程主要分为以下几个阶段:1.nova.scheduler.rpcapi.SchedulerAPI发出RPC请求到nova.scheduler.manager.SchedulerManager。2.从SchedulerManager到调度器(类SchedulerDriver
gj4990
·
2020-09-17 16:41
OpenStack
Netty的httpserver执行
流程分析
Netty的httpserver执行
流程分析
在上一篇文章,我们用Netty进行了一个建议的HttpServer的编写,在本文,我们对该server的执行流程做简要的分析。
importsys
·
2020-09-17 12:10
Netty
http执行流程
channel流程
netty
http
server
Android MediaPlayer中的RTSP(二):FFmpeg中RTSP代码
流程分析
背景:RTSP在不同FFmpeg版本中可能略有不同,本章主要介绍FFmpegRTSP主要的相关代码流程,而涉及FFmpeg的一些结构并不会详细说明,FFmpeg详细的分析,有兴趣可以可以参考雷霄骅大神的博客https://my.csdn.net/leixiaohua1020。1、关键结构ff_rtsp_demuxer:AVInputFormat该结构被称为解复用模块,是音视频文件的一个解封装器,对
wusc'blog
·
2020-09-17 12:19
FFmpeg
流媒体
Android
FFmpeg 探测
流程分析
FFmpeg中,流的探测是一个比较耗时的过程,那他的具体流程是怎样呢,本文进行简单梳理。并对流探测的两个重要函数:avformat_open_input和avformat_find_stream_info进行分析。avformat_open_inputavformat_open_input作用是打开文件,并且对流格式进行初步探测。第一部分,init_input,其中主要分为三种情况:1、FFmpe
wusc'blog
·
2020-09-17 10:05
音视频
FFmpeg
FFmpeg 从seek闪退问题分析ts时长duration计算方法
背景HTTP点播seek闪退分析FFmpeg解析tsduration
流程分析
解决思路背景FFmpeg是非常优秀的开源框架,在使用其进行二次开发及适配的过程中,难免会遇到各种各样的问题。
wusc'blog
·
2020-09-17 10:06
FFmpeg
流媒体
struts中action,actionform,jsp配置及
流程分析
(个人理解)
1、首先,新建各个文件,类TestAction,TestActionForm,test.jsp,struts-config-test.xml(该文件同struts-config.xml放在同一目录,此处我将它们放在了struts-config目录),同时会用到web.xml文件2、建好文件以后开始配置action及其对应的actionform,对于这个配置有两种方法1>、用新建的struts-co
哓白
·
2020-09-17 09:45
Java
EE
Struts
淘宝HSF通信框架,集成spring 启动
流程分析
刚入职新公司,公司内部通信框架用的是淘宝的HSF,用法大概是在xml配置好一个接口,以及其他等待信息之类的。。注入即可,我就没看明白他这是咋回事。我猜应该是有注册中心,从注册中心拉取消费者实例然后去调用。配置大概就是这么用的:但是具体怎么做的?怎么加载到spring的bean工厂?怎么就知道要调用那个服务?怎么找到对方的IP:PORT的?且由源码分析一下:首先这是个springboot项目:把启动
笔记_blog
·
2020-09-17 09:08
spring
spring
hsf
源码分析
bean装填
VTK中世界坐标系到显示坐标系下的
流程分析
水平有限,欢迎各位大神指正!///关于坐标相互转换的理论部分可以参阅http://blog.csdn.net/popy007/article/details/1797121解析vtk下世界坐标系world到显示坐标系下的转换:首先呢在vtkInteractorObserver中存在函数ComputeWorldToDisplay()函数供其子类调用,源代码如下://-----------------
MyStackIsEmpty
·
2020-09-17 08:24
VTK
用户注册
流程分析
1.获取mobile(手机号),sms_code(短信验证码),password(密码)2.检查参数完整性3.检查手机号格式是否正确4.从redis数据库当中获取到短信验证码5.与用户输入的短信验证码作对比6.对比成功,删除redis数据库中的短信验证码7.从mysql数据库中查询手机号有没有被注册8.将手机号,密码,昵称,使用模型类方法提交到mysql数据库,如果发生异常失败回滚.9.将手机号,
weixin_34023982
·
2020-09-17 03:50
数据库
用户注册功能实现 三
短信验证码校验功能实现应用技术:1、前端:js(jQuery框架)、ajax(前后端交互)、2、后端:django接口设计(json),csrf防跨域攻击,form表单校验功能一、获取短信验证码功能1.业务
流程分析
检查手机号码
fksfdh
·
2020-09-17 03:27
python
django
信息系统分析与设计-----流程建模
业务
流程分析
与建模一个具体的业务流程由多个连续的活动组成。复杂的流程还可以划分子流程。
冰河家园
·
2020-09-17 00:07
系统分析与设计
业务流程
muduo整体介绍及Echo服务器
流程分析
muduo是Ractor模式,整个核心是Reactor;EventLoop就充当了Reactor。下面就是muduo的简化类图结构:EventLoop是onethreadperloop中的loop,每个线程只能有一个EventLoop的实体,它来负责IO和定时器事件的分派。它用eventfd来异步唤醒,不同与传统的用一对pipe。它用TimerQueue作为计时管理,Poller实现IOmulti
KangRoger
·
2020-09-16 20:27
muduo源码学习
Android 9.0 AudioRecord代码分析
简介打算开始写一些Android代码的
流程分析
,加深一些记忆,理清一些细节,如果刚好能帮助到你,那就更加好了。手头有的最新的Android代码,就是9.0,所以以此为基准。
weixin_40437029
·
2020-09-16 16:31
Android
android广播动态注册与发送
流程分析
1、相关代码\frameworks\base\core\java\android\app\ContextImpl.java\frameworks\base\core\java\android\app\LoadedApk.java\frameworks\base\services\core\java\com\android\server\am\ActivityManagerService.java\
thh159
·
2020-09-16 16:59
android系统源码阅读笔记
android
广播
测试培训 ---- 如何进行测试需求分析
如何进行测试需求分析测试需求分析流程测试需求分析要点要素分析1、界面元素是否满足自定义的质量标准或行业通行标准或常用使用标准等2、公司部门制定的Web元素描述规范数据分析1、输入域的数据2、已显数据的来源3、数据的输出4、数据关联
流程分析
佟掌柜
·
2020-09-16 15:12
04
历史
掌握Okhttp(3) :拦截器机制及大致
流程分析
拦截器是OkHttp的核心。OkHttp的网络请求的过程就是依赖于各种拦截器(Interceptor)实现的,本文将学习okhttp的拦截器机制。本文源码分析若无特殊说明,均指3.14.0一.拦截器机制我们先看看Interceptor的定义:Interceptor.classpublicinterfaceInterceptor{Responseintercept(Chainchain)throws
gaolhjy
·
2020-09-16 15:10
Android网络框架
掌握Okhttp (2) : OKhttp整体
流程分析
本文,将对Okhttp整体流程进行分析.本文若无特殊说明,采用的okhttp版本为3.10.0一.OkHttpClient分析创建OkHttpClient实例的两种方式:代码片1OkHttpClientokHttpClient=newOkHttpClient();OkHttpClientokHttpClient=newOkHttpClient.Builder().build();我们先研究第一种构
gaolhjy
·
2020-09-16 14:39
Android网络框架
单点登录教程(三)单点注销
流程分析
作者:蓝雄威,叩丁狼教育高级讲师。原创文章,转载请注明出处。一、前言单点登录自然也要单点注销,在一个子系统中注销,所有子系统的会话都将被销毁,用下面的图来说明:步骤分析:1.用户在CRM系统中点击注销按钮.会重定向到统一认证中心的注销方法2.统一认证中心接受到注销请求之后,会销毁全局的会话.3.统一认证中心会拿到之前在该系统中注册的子系统集合.4.依次的调用子系统的登出方法,销毁局部会话.5.每个
wolfcode_cn
·
2020-09-16 14:52
超全SSO系统
Android广播管理二--广播注册(registerReceiver)
流程分析
前面分析了Android系统的广播机制,从本质来说,它是一种消息订阅/发布机制。因此,使用这种消息驱动模型的第一步便是订阅消息;而对Android应用程序来说,订阅消息其实就是注册广播接收器。接下来,我们继续分析Android应用程序是如何注册广播接收器的,以及把广播接收器注册到哪里去的。在Android的广播机制中,ActivityManagerService扮演着广播中心的角色,负责系统中所有
Kitty_London
·
2020-09-16 13:56
Android系统
Broadcast
Android
Oracle闪回特性
Oracle9i中闪回查询操作实例察看Oracle中Delete和Commit操作的
流程分析
例:Oracle9i的F
sdfsf双方各
·
2020-09-16 10:31
微信公众平台授权
流程分析
微信授权
流程分析
什么是openId,unionIdopenid是某个公众号与对应粉丝账号相关联的唯一ID,unionId个人主体或企业主体账号与粉丝账号相关联的唯一ID,下属的所有公众号都可以用这个unionId
Super-B
·
2020-09-16 08:24
微信
公众号
公众号
微信
Android系统启动
流程分析
本文讲解Android系统在启动过程中的关键动作,摈弃特定平台之间的差异,讨论共性的部分,至于启动更加详细的过程,需要结合代码分析,这里给出流程框架,旨在让大家对开机过程更明了。各个平台启动流程基本类似,但代码追踪却有较大区别。高通,MTK,Sprd各有不同处理,均有各自的一套源码,本文代码以展讯平台SC7710系列Android4.1源码进行追踪。1,Android启动概述Android系统启动
麦田98
·
2020-09-16 08:24
安卓探究
单击屏幕亮屏
流程分析
一、kernel部分1.看TP驱动有没有事件上报cat/dev/input/evnet1或者看kernellog[4036.282237]bt541_ts_device5-0020:gesturewakeupinputreport//获得唤醒事件[4036.486756]bt541_ts_device5-0020:bt541_ts_resumestartTP启动开始[4036.550178]bt5
力克2015
·
2020-09-16 07:59
Android系统研发
【Android】RxJava源码
流程分析
二、
流程分析
最终会形成一条被观察者链,每个被观察者对象都有各自的线程Schedulers用来切换线程。OkHttpCall封装okhttp3相关的操作。
Tech Ranger
·
2020-09-16 07:25
Android
java
android
nginx-0.8.38源码探秘(五)
email:
[email protected]
来源:http://blog.csdn.net/ccdd14前面把初始化
流程分析
完成,可以发现,nginx是先把各模块的指令初始化完成后,再初始化子进程,最后等待客户请求到来
ccdd14
·
2020-09-16 07:20
nginx
gstreamer插件工作原理与
流程分析
gstreamerplugins的工作同所有的基于插件的程序的工作原理类似,本质上都是通过读取动态库实现的,只需要每个动态库都实现某一个特定的接口就可以了,比如XX_init等,gstreamer统一使用plugin_init。里面会有个像注册表一样的数据结构会存储所有的插件的信息。(1)在应用程序启动时,会调用gst_init--->gst_init_check。gst_init_check函数
Smith先生
·
2020-09-16 05:54
多媒体
gstreamer插件工作原理与
流程分析
.
gstreamerplugins的工作同所有的基于插件的程序的工作原理类似,本质上都是通过读取动态库实现的,只需要每个动态库都实现某一个特定的接口就可以了,比如XX_init等,gstreamer统一使用plugin_init。里面会有个像注册表一样的数据结构会存储所有的插件的信息。(1)在应用程序启动时,会调用gst_init--->gst_init_check。gst_init_check函数
xyh01215
·
2020-09-16 05:51
Gstreamer
Linux
QEMU-KVM live migration
流程分析
1、入口函数:do_migrate()处理以下几件事:(1)判断当前migrate状态:active?(2)判断是否有blockmigrate设备存在(3)初始化(4)判断migrate协议:TCP/UNIX/EXEC/FD(5)savevmstate(6)migratestate2、函数调用tcp_start_outgoing_migration()migrate_fd_connect()qem
weixin_33936401
·
2020-09-16 00:12
网络
TI-Davinci开发系列之八x-loader工作
流程分析
上接博文《TI-Davinci开发系列之七DVSDK-4.03目录介绍》。DM3730仅集成了一个NandFlash控制器,所以uboot镜像只能烧在NandFlash上,通过NandFlash启动,然而NandFlash并不支持XIP(eXecuteInPlace,即芯片内执行)。所以针对NandFlash的启动方式,一般在采用0x0地址挂载一个容量较小的SRAM(称为Steppingstone
gqb666
·
2020-09-15 23:43
嵌入式
u-boot
DM3730
DVSDK
Davinci达芬奇
嵌入式Linux驱动开发
linux 文件系统sysvinit
流程分析
参考网上许多的教程。然后有一下相关的笔记:kernel在挂载完文件系统后,会执行第一个进程init这个进程的PID为1这个进程是所有进程的父进程init进程,首先要去读取inittab中的数据,根据这里面的数据去执行相关的初始化。在inittab可以指定默认的运行级别id:5:initdefault:还会规定第一个执行的程序si::sysinit:/etc/init.d/rcS//指定单用户模式~
weixin_33884611
·
2020-09-15 20:55
MMS实现详细分析
MMS实现的
流程分析
转载注明源地址:http://hi.baidu.com/luv%5Fresplendent/blog/item/2b49fab536468ccb37d3ca41.html基于MMS的终端系统中
zhaohc_nj
·
2020-09-15 18:53
3 ,Kafka 工作
流程分析
,生产,保存,消费
一,producer生产消息:1,写入方式:生产者写数据的过程producerproducer:生产者push:推patition:分区broker:kafka的分机写过程:producer采用push模式将消息发布到broker,每条消息都被append到patition中,属于顺序写磁盘(顺序写磁盘效率比随机写性能要高,保障kafka吞吐率)。总结:每条消息,都按照时间顺序,依次写入分区。2,
孙砚秋
·
2020-09-15 14:47
kafka
netty5笔记-总体
流程分析
3-ChannelHandlerContext
上面一篇文章介绍了ChannelPipeline,它维护了一个有序的ChannelHandler列表,但并非是直接关联,而是通过维护ChannelHandlerContext进行关联。ChannelPipeline的每一个节点都是一个ChannelHandlerContext实例,不存在线程安全问题,而对应的ChannelHandler如果未标记Sharable也是新建的实例,也不存在线程安全问题
阳二快跑
·
2020-09-15 12:27
《大数据: Hadoop(HDFS) 读写数据
流程分析
》
一、HDFS的写数据正常流程①.服务端启动HDFS中的NN和DN进程②.客户端创建一个分布式文件系统客户端,由客户端向NN发送请求,请求上传文件③.NN处理请求,检查客户端是否有权限上传,路径是否合法等④.检查通过,NN响应客户端可以上传⑤.客户端根据自己设置的块大小,开始上传第一个块,默认0-128M,NN根据客户端上传文件的副本数(默认为3),根据机架感知策略选取指定数量的DN节点返回⑥.客户
HarkerYX
·
2020-09-15 12:19
大数据
Channel的注册
流程分析
在AbstractBootStrap类的initAndRegister()方法中,先进行对Channel的初始化,在初始化过程结束之后,会执行Channel的注册流程逻辑。如下图:上图所示源码中,ChannelFutureregFuture=config().group().register(channel);执行Channel注册到EventLoop上的流程。1.config()方法先看该行代码
ws92dj
·
2020-09-15 12:04
Netty源码
netty5笔记-总体
流程分析
3-ChannelHandlerContext
上面一篇文章介绍了ChannelPipeline,它维护了一个有序的ChannelHandler列表,但并非是直接关联,而是通过维护ChannelHandlerContext进行关联。ChannelPipeline的每一个节点都是一个ChannelHandlerContext实例,不存在线程安全问题,而对应的ChannelHandler如果未标记Sharable也是新建的实例,也不存在线程安全问题
懒惰的小蜗牛
·
2020-09-15 11:15
Java
上一页
41
42
43
44
45
46
47
48
下一页
按字母分类:
A
B
C
D
E
F
G
H
I
J
K
L
M
N
O
P
Q
R
S
T
U
V
W
X
Y
Z
其他