本帖最后由 腾讯云6折购 于 2022-9-19 21:42 编辑
因为论坛发不了代码。被一个for循环困住了!!我写在了下面的链接里面,大佬们帮忙看一下!!! 球完整写法!!! https://paste.org.cn/p8Rrn1eOfO 有一个mjj大佬 非常精炼的表达了我的想法,可是我不会写!!!球大佬帮忙写一下,他这样说: mjj变量被其他线程改为False的时候,输出会变成"我关机啦"的。 |
https://paste.org.cn/hXeqEYO0VR 27-39行 就是要解决的问题 |
本帖最后由 yqnnko 于 2022-9-19 22:00 编辑
这个if list 就不对, 就算list里是三个False他也是数组 逻辑判断中相当于True ,只有他是空 或者本身就是个布尔值 False 的时候才会是False 而且你这个list第一次获取后就没有更新吧 |
没看懂你写的什么东西,如果上面那位大佬没错的话还是线程竞争的问题,看一下会不会有多个线程同时修改mjj变量。比较基础的东西,注意”同时“ |
大家都知道你这段代码啥意思 而且这段代码确实没毛病 主要这个Mjj是怎么获取的 另一个线程。另一个程序,还是VPS厂商提供的API?而且也不知道你处理/更新mjj这个变量的操作是不是有问题,还是要看源码 |
啥意思啊? 你的意思是说mjj在sleep那六秒内关机程序会错过, 就检测不到吗? |
没错,我就是那个见死不救的人 |
对不起 读不懂 这个mjj变量是从哪里来的 |
呜呜呜 |
这是入门经典问题?多线程操作同一个全局变量会造成竞争,所以要加锁。https://blog.csdn.net/xingyan98/article/details/98777578 https://m.jb51.net/article/150449.htm |
mjj这个变量是我在代码之前写好了 可以检测开机还是关机,我现在希望mjj开机的时候可以打印开机,关机的时候可以打印关机,重要的是及时打印 其实不用管mjj从哪里来的,你只要知道mjj是一个随时会变的一个变量,在true和fales互相变化 |
建议把源代码贴出来 |
手机网页打开白屏,抬走吧。 |
大佬 太看得起我了 我直接看懵比了 我才学了两天python 就想实现个小功能,结果遇到一个稍微高阶的问题 直接把我难住了 |
论坛会拦截代码 不让发python的代码 |