之前因为要用到某些IPv6的网站,就把网线从不支持IPv6的路由器上拔下来,直接插到光猫上,拨号上网。

结果问题就来了。最近在收集3A大作,每次挂上bt大约一个小时左右,系统就会直接卡死。没错,不是自动重启,也没有蓝屏,整块屏幕就保持卡死前最后一刻的状态,硬盘灯也不闪。这导致,上百G的文件好不容易花上快半个小时校验完,还没下个多少,又得重新校验。这个问题连着出了四五次,使我提高了对这个问题的重视程度。

后来左思右想,想不出哪里出了问题,打算做出硬件出现了暗伤的结论。偶然想到唯一做出的硬件变更就是换了网络连接方式,打算死马当活马医,把网线插回路由器试试(这样电脑就没了IPv6,同时也不需要自己拨号了)。

结果。。

很快啊,啪的一下就好了,bt连着用了近10小时都没出再出现这个问题。

于是得出结论:Windows 8 + P8B75-V + bt + 拨号 = 大概率卡死。

至于为什么是这样,我也不知道

===============================
后记

尝试了一下,如果把下载速度限制在一个合适的范围,好像就不会翻车,用60M的宽带,限制在5000K下载就没问题。

http://mscrmtechie.blogspot.com/2015/08/visio-open-group-and-close-group.html

在用Visio画图的时候,使用了一些内置的组合控件,双击编辑内容的时候会自动打开新的窗口(还会自动把组件放大到窗口尺寸)。编辑的时候挺爽,但是编辑完以后,发现无法退出该模式,只能在右下角切换回原本的视图(也就意味着实际上这个窗口并没有关闭)。

自己在Visio里摸了一大圈,只发现了怎么打开这窗口,没发现怎么关。重点是,有时候关闭vsdx文件,之后再重新打开的时候,跳出来的是这个子窗口,而不是正常的全文件视图,每次都要多点几下好麻烦。网上冲浪后得知,有一个非常隐蔽的组合键Ctrl + F4可以关闭当前选中的子窗口。

跟隔壁的优秀大学生(暂定)聊天后才后知后觉地发现,原来げんしん是拿Unity写的。

然而某次启动的时候,不知道怎么把Unity内置的画质设置窗口碰出来了。

后来很好奇这窗口是怎么弄出来的,就去查了一下,没有找到什么快捷键,但是发现了一个参数,可以在启动的时候主动调出那个窗口:

<game>.exe -show-screen-selector

但是在游戏里试了一下,发现并不能生效,应该是游戏启动后有主动加载用户设置的逻辑。

import asyncio, time

async def a(s):
    import time
    await asyncio.sleep(1)
    print(s)

async def b():
    asyncio.ensure_future(a('asd'))
    asyncio.ensure_future(a('qwe'))
    await asyncio.sleep(2)
    print('b')

loop = asyncio.get_event_loop()
B = b()
loop.run_until_complete(B)

要注意的有几个地方:

  1. async def的函数在哪里都可以调用,但是在调用的时候,必须显式等待其结束,否则会出现RuntimeWarning: coroutine 'xxx' was never awaited。在async函数中调用async函数的话,可以使用await关键字直接阻塞等待;在非async函数中则必须设置事件循环器event looper,然后通过事件循环器对所有的异步async函数进行阻塞式等待,避免主线程在子线程完成前退出;
  2. 在协程中休眠线程不能用time.sleep(),而应该用asyncio.sleep(),否则休眠的是整个进程而不是目标协程;
  3. asyncio.ensure_future()比较有意思,提供了类似“用完就扔”的协程运行模式,不必在后续显式await该协程。

在实验室的内网搭了一个GitLab,结果没想到,没有经过任何配置的邮件服务居然是正常运行的。不过发现有一个问题是,由于是内网搭建,服务器显然是没有域名可言的,所以邮件发出去的时候顺便把内网地址也暴露出去了。这两天抽了点时间看一下,发现GitLab官方对这一块没有文档介绍,Email部分的似乎没有提到这个。

之前以为是改/etc/gitlab/gitlab.rb,然后sudo gitlab-ctl reconfigure,后面发现并不行,就一直没管了。

直到某次实验室学弟说我reconfigure又把clone那里显示的域名弄乱了,并给了我一个配置教程之后,才发现似乎是在另一个地方可以完成配置。

要修改的是/opt/gitlab/embedded/service/gitlab-rails/config/gitlab.yml文件,这是每次reconfigure完GitLab后自动生成的配置文件。修改文件中email_from键值对的内容即可,对应的就是收信时显示的发信人地址;而修改host则可以更改网页中显示git clone时的仓库地址。然后sudo gitlab-ctl restart使得配置生效即可。

顺便提醒,每次reconfigure完之后,gitlab.yml的自定义内容会被重置,需要手动重新配置。

参见 https://www.cnblogs.com/miaocbin/p/13038601.html