V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
V2EX  ›  JasonLaw  ›  全部回复第 16 页 / 共 36 页
回复总数  714
1 ... 12  13  14  15  16  17  18  19  20  21 ... 36  
2022-02-26 16:07:32 +08:00
回复了 gosidealone 创建的主题 Java 求助 Java 大佬 synchronized 的问题
@fly2mars #23 不是随机的,只能说 Java 不会保证“线程 1 看到线程 2 所做的改变”。如果想让线程 1 看到线程 2 所做的改变,都使用同一个 lock 就行了。“ Monitor lock rule. An unlock on a monitor lock happens before every subsequent lock on that same monitor lock.”就可以保证。
2022-02-26 15:19:08 +08:00
回复了 gosidealone 创建的主题 Java 求助 Java 大佬 synchronized 的问题
@fly2mars #20

Q:那当线程 1 看见了线程 2 所做的改变,所以输出 2,2 了是吧
A:对

Q:线程 1 有没有看见线程 2 的改变,是在 System.out.println(i)这步决定的吗
A:也不能说是 System.out.println(i)决定了是否看见别的线程所做的改变。因为两个线程所使用的 lock 不是同一个,也就没有不能保证这个线程是否能够看到另外个线程所做的改变。更多细节可以看一下 https://stackoverflow.com/questions/16213443/instruction-reordering-happens-before-relationship
2022-02-26 14:49:42 +08:00
回复了 gosidealone 创建的主题 Java 求助 Java 大佬 synchronized 的问题
@Blanke #5
@fly2mars #15

Q:为什么会出现先输出 2 ,再输出 1 呢?
A:Main.i 是共享可变状态,但是两个线程所使用的 lock 是不一样的。因此会出现“线程 1 先执行了 i++,线程 2 也看到了线程 1 所做的改变,线程 2 此时所看见的 i 是 1 ,然后线程 2 执行了 i++和 System.out.println(i),先输出了 2 。但是线程 1 并没有看见线程 2 所做的改变,它所看见的 i 还是 1 ,然后执行 System.out.println(i)输出了 1”这种情况。
2022-02-21 09:53:42 +08:00
回复了 JasonLaw 创建的主题 微信 关于微信小程序订阅消息事件推送的疑问
@pytth #9 嗯,现在就是自己记录起来谁订阅了哪个商品。
2022-02-16 19:46:47 +08:00
回复了 JasonLaw 创建的主题 微信 关于微信小程序订阅消息事件推送的疑问
@pytth #7 不用申请两个模版,我只是想做到“订阅了才发通知,没订阅不发”
2022-01-29 21:01:12 +08:00
回复了 JasonLaw 创建的主题 微信 关于微信小程序订阅消息事件推送的疑问
@itning #5 这样会造成“用户订阅了 a 商品的通知,但是却没收到 a 商品的通知,反而收到 b 商品的通知”
2022-01-29 18:49:09 +08:00
回复了 JasonLaw 创建的主题 微信 关于微信小程序订阅消息事件推送的疑问
@Exdui #3 THX
2022-01-29 17:58:04 +08:00
回复了 JasonLaw 创建的主题 微信 关于微信小程序订阅消息事件推送的疑问
@crystom #1 也就是前端记住订阅的是哪个商品的通知,然后订阅的结果是啥,最后通知到服务端?
2022-01-26 18:11:45 +08:00
回复了 JasonLaw 创建的主题 程序员 讨论一下 MapStruct 的利弊
@zhongpingjing #10 可以说一下你碰到的问题吗?
@qza1212 #2 创建订单包含了扣减积分,扣减积分的结果会影响订单的状态。
@chendy #1
@billly #3
@gadfly3173 #4

我通过 extends GenericJackson2JsonRedisSerializer ,然后 redisTemplate.setValueSerializer(new CustomGenericJackson2JsonRedisSerializer());解决了这个问题。详细见附言。
@chendy #1 代码里面执行系列化和反序列化?相当于使用 RedisTemplate<String, String>,而不是 RedisTemplate<String, Object>?
2021-11-12 09:53:41 +08:00
回复了 JasonLaw 创建的主题 程序员 如何解决负载测试产生的“socket: too many open files”
@ysc3839 #3
@Citrus #4
@setsunakute #6
@ch2 #8
@TripleZ #9

按照 https://apple.stackexchange.com/a/312010/362633 进行修改,问题解决了。
2021-11-11 18:59:01 +08:00
回复了 JasonLaw 创建的主题 程序员 如何解决负载测试产生的“socket: too many open files”
@ysc3839 #3
@Citrus #4

好像是😅,有时候还是没有想到太多东西,怪不得 Nginx 的 error.log 没有相关的日志。我晚点处理一下看看。
2021-11-11 18:29:27 +08:00
回复了 JasonLaw 创建的主题 程序员 如何解决负载测试产生的“socket: too many open files”
@aladdinding #1 我尝试过按照 https://stackoverflow.com/a/27849503/5232255 进行修改,然后 restart Nginx ,还是不行。
2021-11-03 19:04:30 +08:00
回复了 JasonLaw 创建的主题 程序员 关于 Nginx 和 Swagger UI 的问题
@litchinn #1
@neekeV2 #3
@ila

找到解决方案了,请见附言。
2021-11-03 18:37:42 +08:00
回复了 JasonLaw 创建的主题 程序员 关于 Nginx 和 Swagger UI 的问题
@neekeV2 #3 设置 server.servlet.context-path 为 /appServer ,然后做相应的修改,的确是可以。不过我不想设置 server.servlet.context-path🤐。
2021-11-03 18:04:58 +08:00
回复了 JasonLaw 创建的主题 程序员 关于 Nginx 和 Swagger UI 的问题
@litchinn #1 使用 SWAGGER_2 时,设置 springfox.documentation.swagger.v2.host 为 a.com/appServer 就行了,但是 OAS_30 不行。
2021-10-29 09:00:54 +08:00
回复了 JasonLaw 创建的主题 程序员 Raft Consensus Algorithm - matchIndex[]的作用是什么?
2021-10-28 20:36:57 +08:00
回复了 JasonLaw 创建的主题 程序员 Raft Consensus Algorithm - matchIndex[]的作用是什么?
@realrojeralone #3 如果是这样的话,那么#1 所说的就是错误的了。在(c)中,S1 的 matchIndex[]会是[2, 2, 1, 1],但是 commitIndex 并不会是 2 。

https://i.imgur.com/vzDklGB.png
1 ... 12  13  14  15  16  17  18  19  20  21 ... 36  
关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1088 人在线   最高记录 6543   ·     Select Language
创意工作者们的社区
World is powered by solitude
VERSION: 3.9.8.5 · 23ms · UTC 22:45 · PVG 06:45 · LAX 15:45 · JFK 18:45
Developed with CodeLauncher
♥ Do have faith in what you're doing.