http://www.sufeinet.com/plugin.php?id=keke_group

苏飞论坛

 找回密码
 马上注册

QQ登录

只需一步,快速开始

分布式系统框架(V2.0) 轻松承载百亿数据,千万流量!讨论专区 - 源码下载 - 官方教程

HttpHelper爬虫框架(V2.7-含.netcore) HttpHelper官方出品,爬虫框架讨论区 - 源码下载 - 在线测试和代码生成

HttpHelper爬虫类(V2.0) 开源的爬虫类,支持多种模式和属性 源码 - 代码生成器 - 讨论区 - 教程- 例子

查看: 5948|回复: 7

[HttpHelper] 我发现了5个超级错误,请管理员给出解答!

[复制链接]
发表于 2021-6-9 11:50:57 | 显示全部楼层 |阅读模式
1.png
2.png
3.png
4.png
5.png

多线程的时候



1. 开通SVIP会员,免费下载本站所有源码,不限次数据,不限时间
2. 加官方QQ群,加官方微信群获取更多资源和帮助
3. 找站长苏飞做网站、商城、CRM、小程序、App、爬虫相关、项目外包等点这里
发表于 2021-6-9 14:51:20 | 显示全部楼层
这个和你请求的网站朋关系,多线程的时候httphelper的对象是不能共用的,必须在每一个线程里单独new对象
发表于 2021-6-9 14:53:31 | 显示全部楼层
在线程中的对象如果不是加锁过的,或者是常量都必须是单独创建的,不管你用什么都是这样,并不是用Httphelper才会出现这种问题,多线程使用同一个对象当然会值混乱
 楼主| 发表于 2021-6-9 17:31:53 | 显示全部楼层
站长苏飞 发表于 2021-6-9 14:53
在线程中的对象如果不是加锁过的,或者是常量都必须是单独创建的,不管你用什么都是这样,并不是用Httphelp ...

是的,我每个线程都单独创建的httphelper对象。
 楼主| 发表于 2021-6-9 17:33:01 | 显示全部楼层
是这样,我创建了10个线程,每个线程while 循环取任务,我是应该把httphelper创造while外面 还是 while里面?
 楼主| 发表于 2021-6-9 17:33:25 | 显示全部楼层
站长苏飞 发表于 2021-6-9 14:53
在线程中的对象如果不是加锁过的,或者是常量都必须是单独创建的,不管你用什么都是这样,并不是用Httphelp ...


是这样,我创建了10个线程,每个线程while 循环取任务,我是应该把httphelper创造while外面 还是 while里面?
发表于 2021-6-10 01:03:34 | 显示全部楼层
如果口述别人不能复原异常情况,附错误Demo代码比较合适,这样别人就不用猜很多次
发表于 2021-6-10 08:20:39 | 显示全部楼层
写到线程里面即可,和循环无关,必须写到线程里面,不是线程外,这个不管你用什么变量都是这样的,多线程会并发,这个你先想清楚,这个和你用不用Httphelper没任何关系,用啥都会有并发,想不并发只有两种情况,一下写到线程中做为局部变量,二是直接加锁,或者常量不需要变化的
您需要登录后才可以回帖 登录 | 马上注册

本版积分规则

QQ|手机版|小黑屋|手机版|联系我们|关于我们|广告合作|苏飞论坛 ( 豫ICP备18043678号-2)

GMT+8, 2024-11-22 03:09

© 2014-2021

快速回复 返回顶部 返回列表