GuozhongCrawler系列教程 (5) TransactionRequest具体解释
2024-08-30 13:18:48
为了实现和维护并发抓取的属性信息提供线程安全的事务请求。TransactionRequest是一个抽象类自己不能设置Processor,却须要实现 TransactionCallBack接口。TransactionRequest是个复合的BasicRequest。他能够将多个PageRequest、BinaryRequest甚至TransactionRequest 自己的对象加入到child集合中,在下载过程中首先下载TransactionRequest中的全部childRequest。每一个childRequest下载完毕后使用notify方式逐步向上通知。
直到全部的child下载完毕TransactionRequest回调 TransactionCallBack的callBack方法通知业务层这个TransactionRequest下载完毕。
方法具体资料
getPipeline
public Pipeline getPipeline()
setPipeline
public void setPipeline(Pipeline pipeline)
addAttribute
public BasicRequest addAttribute(java.lang.String attribute,
java.lang.Object value)从类复制的说明:BasicRequest
设置属性- 指定者:
addAttribute
在类中BasicRequest
- 返回:
- 返回BasicRequest对象自身
getAttribute
public java.lang.Object getAttribute(java.lang.String attribute)
从类复制的说明:BasicRequest
取得属性- 指定者:
getAttribute
在类中BasicRequest
- 返回:
- 返回attribute属性相应的value。没有则返回null
addChildRequest
public void addChildRequest(BasicRequest request)
加入一个BasicRequest到TransactionRequest的child中- 參数:
request
-
iteratorChildRequests
public java.util.Iterator<BasicRequest> iteratorChildRequests()
返回这个TransactionRequest全部child的迭代器- 返回:
notify
public void notify(int hashcode)
从类复制的说明:BasicRequest
当子url或者当前url完毕的时候回调- 覆盖:
notify
在类中BasicRequest
- 參数:
hashcode
- 实际Request的hashCode
checkComplete
public void checkComplete()
检查是否全部的Request标记都不是false。假设是那么全部的Request已经请求完毕和处理。
最新文章
- iOS 消息处理之performSelector
- 【iCore3应用开发平台】发布 iCore3 应用开发平台寄存器说明
- Azure Redis Cache (2) 创建和使用Azure Redis Cache
- android 添加背景音乐
- 3D中的切线空间简介
- 网络编程 --- URLConnection --- 读取服务器的数据 --- java
- PAT (Basic Level) 1004. 成绩排名 (20)
- 动态树(LCT):HDU 4010 Query on The Trees
- poj2245Lotto(最基础的dfs)
- Android精品源码与技术博文
- 我的第一个python web开发框架(5)——开发前准备工作(了解编码前需要知道的一些常识)
- [Python][小知识][NO.4] wxPython 字体选择对话框(O.O 不知道放到那里就放到这个分类的)
- ionic3 git 提交报错
- 迭代器与泛型for
- Linux 网络流量实时监控工具之ntopng详解
- 正则表达式(Java版整理)
- SignalR 设计理念(二)
- EMC,EMI,EMS,ESD分别是什么?有什么区别和联系?
- Callable和Future详解
- pyqt5生成的APP制作DMG
热门文章
- bzoj1584 [Usaco2009 Mar]Cleaning Up 打扫卫生 动态规划+思维
- bzoj2648/2716 kdtree
- STL中heap用法
- 聊天程序(基于Socket、Thread)
- ObjectDataSource配合存储过程(采用数据集)的使用(删除可以解决,但是编辑出错好像它的方法也无法解决
- Redis集群模式配置
- (5)ASP.NET Core 中的静态文件
- 记一次ORM的权衡和取舍
- BZOJ——1607: [Usaco2008 Dec]Patting Heads 轻拍牛头
- [BOI2007] Mokia