V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  sunny352787  ›  全部回复第 11 页 / 共 42 页
回复总数  821
1 ... 7  8  9  10  11  12  13  14  15  16 ... 42  
350 天前
回复了 BellaCampen 创建的主题 问与答 为什么目前 ai 的作画有很强的不适感呢
AI 画问题比较多的地方一个是透视,另一个就是内容量过大,总要把一切填满的那种感觉
351 天前
回复了 snylonue 创建的主题 游戏开发 求推荐 2D 游戏引擎
新手就 Unity 就行了,别的都不用考虑,Unity 碰到任何问题基本都能找到答案,别的都不行
351 天前
回复了 snylonue 创建的主题 游戏开发 求推荐 2D 游戏引擎
@whp1473 unity 有 2d 模式,正交摄像机
@lacklock 版权意识可以~
不对啊,你这新公司做事不地道,硬卡离职证明的公司也不是啥好东西
emmm...这几张图你有版权吗?
@Trinity888 非常好,但是我家里和公司都部署好了 docker compose ,而且 mac 用不了啦~
看起来是个本地开发的辅助工具,挺好的,有这么个东西会很方便
@zengxs
356 天前
回复了 E0421 创建的主题 程序员 今日份笑话,用 IF 分支区分项目
if applicationId == "淘宝"
return 20¥
else if applicationId == "天猫"
return 200¥
else if applicationId == "拼多多"
return 9.9¥
endif

类似这种?
CPU <— > 寄存器<— > 缓存<— >内存

在使用高级语言编写程序的时候,锁的影响范围是内存这一级别,包括 atomic 处理数据也是保证内存数据一致
而多线程语句会在 CPU 这个层级进行,所以如果不加锁或者其他类型的“屏障”,即便是 i++这种看起来最简单的语句在汇编层面也是好几句处理,这就会出现 CPU0 和 CPU1 拿到的数据不一致的问题
具体到这段代码来看,channel 事实上已经在“内存”这一级别进行了锁操作,那么在不同的 CPU 上获取到的锁之前的数据当然就是一样的,因为都是从内存重新拿的

顺便,这里也能看到锁这类操作“很重”的原因,就是要经历上面内存->缓存->寄存器->CPU 这一整套过程
老弟啊,咱们写程序修改的变量都是在内存里的呀,谁去管缓存干什么了,修改了那对所有的线程都是可见的呀,多线程会出现的问题是修改一个变量的顺序,而不是修改完不给别人...
从头开发的话我建议 Unity ,另外国内所有的游戏引擎,包括但不限于 cocos2d-x 系列、laya 、egret 等,都有各种奇葩问题,基本跨版本都不兼容,老版本没有新系统兼容性支持,文档不全( laya 居然故意埋坑让你付费咨询),做两年不做了等等问题,除非你有能力去处理引擎的问题,不然还是 Unity 吧,现在微信小游戏也支持 Unity ,没什么必要浪费时间去用别的
哪有那么复杂,就是 c 在这里锁住了当前线程不执行 print 而已,你这里的 c 是阻塞 channel ,不是非阻塞 channel ,阻塞 channel 的读取和输入你可以看作是一个操作或者类似一次函数调用,没有读取就会卡在输入这端
MD ,路过还能被电子脚踹一下...
建议不要来
359 天前
回复了 diku 创建的主题 耳机 五百以下没有值得入手的耳机!我说的!
你说的对!(结贴)
1 ... 7  8  9  10  11  12  13  14  15  16 ... 42  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1028 人在线   最高记录 6679   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 32ms · UTC 19:36 · PVG 03:36 · LAX 11:36 · JFK 14:36
Developed with CodeLauncher
♥ Do have faith in what you're doing.