网页
资讯
视频
图片
知道
文库
贴吧
地图
采购
进入贴吧
全吧搜索
吧内搜索
搜贴
搜人
进吧
搜标签
日
一
二
三
四
五
六
签到排名:今日本吧第
个签到,
本吧因你更精彩,明天继续来努力!
本吧签到人数:0
一键签到
成为超级会员,使用一键签到
一键签到
本月漏签
0
次!
0
成为超级会员,赠送8张补签卡
如何使用?
点击日历上漏签日期,即可进行
补签
。
连续签到:
天 累计签到:
天
0
超级会员单次开通12个月以上,赠送连续签到卡3张
使用连续签到卡
07月31日
漏签
0
天
mathematica吧
关注:
19,843
贴子:
73,918
看贴
图片
吧主推荐
游戏
5
回复贴,共
1
页
<<返回mathematica吧
>0< 加载中...
【求助】什么是并行计算的副作用?
只看楼主
收藏
回复
轸幻FIGHTER
()[]区别
5
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
在使用Parallelize时,帮助文档提到过副作用,如图。
本人不太了解这个副作用是什么,而且前者primes为什么会没有得到结果?
感谢各位吧友的热心解答,源代码如下:
primes = {};
Parallelize[
Scan[If[PrimeQ[2^# - 1], AppendTo[primes, #]] &, Range[1000, 4000]]];
primes
Repentanze
还未摆脱
8
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
我不太清楚帮助文档里“副作用”的含义,但是这个问题可能是因为AppendTo函数本身不适合并行。
对于前者,你可以设想一下两个并行线程同时调用AppendTo[Primes,#],导致结果相互覆盖,所以后一种情况使用共享变量避免了这种情况。
当然上面都是我猜的。
2025-07-31 11:39:10
广告
不感兴趣
开通SVIP免广告
加加加藤惠
有待掌握
6
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
没设置共享变量的话每个并行内核各自使用自己的primes, 所以出了并行内核之后, 主内核的primes不变
xzcyr
吧主
15
该楼层疑似违规已被系统折叠
隐藏此楼
查看此楼
补一句:“副作用”这个概念有相应的百科词条,你用“编程 副作用 百科”之类的关键字就能搜到了。
登录百度账号
扫二维码下载贴吧客户端
下载贴吧APP
看高清直播、视频!
贴吧页面意见反馈
违规贴吧举报反馈通道
贴吧违规信息处理公示