这几天才发现, 自己的 ~ 目录下突然多了个名叫 libpeerconnection.log 的文件, 里面是空的.

这几天做了好多事情啊, 哪知道是哪个动作干的捏?

删掉了事, 然后做事结束, 关机. -- 好吧,我好奇心太小了.

然后重启后, 突然发现又出了这么个玩意儿. 这是个情况, 某个奇怪的常用程序设置问题?

google 一下, 可以得到很多信息, 顺着链接查看, 可以发现是 chrome 干的, chrome 说是 chromium 干的. 无论是谁, 罪魁祸首找到了

顺着这个思路, 很快找到了这个 issue, 它指出了错误的源头, <tommi@chromium.org>, 这家伙提交了一个 commit , 其中找到如下这么触目惊心的一段.

 

diff --git a/third_party/libjingle/overrides/initialize_module.cc
b/third_party/libjingle/overrides/initialize_module.cc
....
+  if (CommandLine::Init(0, NULL)) {
+#if !defined(OS_WIN)
+    // This is not needed on Windows since CommandLine::Init has already
+    // done the equivalent thing via the GetCommandLine() API.
+    CommandLine::ForCurrentProcess()->AppendArguments(command_line, true);
+#endif
+    logging::InitLogging(
+        FILE_PATH_LITERAL("libpeerconnection.log"),
+        logging::LOG_TO_BOTH_FILE_AND_SYSTEM_DEBUG_LOG,
+        logging::LOCK_LOG_FILE,
+        logging::APPEND_TO_OLD_LOG_FILE,
+        logging::DISABLE_DCHECK_FOR_NON_OFFICIAL_RELEASE_BUILDS);
+  }
.....

谢谢你姥姥一家子, 毛事没有, 先在当前目录生成一个 .log 文件?

照你这么玩, gtk 是不是要每次开机在我 /boot 目录下生成几十个二进制文件才配得上他的身份?

===============================================================================

我们知道, 世间万物都是有代价的, 因为效率的问题, 付出的往往必须要比收获的多, 而且还要多不少.

在代码上一样, 我们需要解决一个问题, 往往面对一些权衡, 空间换时间? 时间换空间? 美观换效率? 效率换美观? 一个奇怪的语法还是可维护性好但是效率稍微差点的一段实现?

无论是什么样的选择, 我们都应该符合如下规律:

  1. 损失需要有回报, 比如一个占用内存大很多的片段,解决同一个问题,如果不能更加快,要你何用?
  2. 损失应该可以被人接受, 比如要是为了加速下 chrome, 却干掉我几个 lib 库中的东西, 这显然是不可以接受的
  3. 如果可以, 选择权力可以交给最终用户, 比如这个, 给我个配置文件让我选择是否要记录, 记录在哪里要死啊

比如这次, <tommi@chromium.org> 这位同志, 你知道我开机第一句话是什么? 是 ls

你知道, 我开机后第一个目录是在哪里? 是 ~

每次看到你这段充满智慧的代码, 看到那个傻 X 的 log 文件, 我就想, 这家伙是政府出来的吧.


Yu

Ideals are like the stars: we never reach them, but like the mariners of the sea, we chart our course by them.

8 Comments

小草元 · July 5, 2013 at 23:49

Opera Mini 7.1.32052 Opera Mini 7.1.32052 J2ME/MIDP Device J2ME/MIDP Device

看日志看着看着就走这来了,只能说你的日志信息太大。。。

Leniy · June 26, 2013 at 15:54

Google Chrome 27.0.1453.116 Google Chrome 27.0.1453.116 Windows 7 Windows 7

你现在就等着毕业了。整天呆在宿舍玩还是提前开始去实验室上班了?

    yu · June 26, 2013 at 16:41

    Google Chrome 28.0.1500.52 Google Chrome 28.0.1500.52 GNU/Linux x64 GNU/Linux x64

    当然是在实验室被各种催结果啦

    yu · June 26, 2013 at 16:43

    Google Chrome 28.0.1500.52 Google Chrome 28.0.1500.52 GNU/Linux x64 GNU/Linux x64

    毕设和工作无缝对接,真是作的一手好死,一天的休息都没的

Leniy · June 26, 2013 at 08:54

Google Chrome 27.0.1453.116 Google Chrome 27.0.1453.116 Windows 7 Windows 7

我对于~有洁癖。bashrc profile什么的,都让我给链接到一个文件了

    yu · June 26, 2013 at 12:11

    Google Chrome 28.0.1500.52 Google Chrome 28.0.1500.52 GNU/Linux x64 GNU/Linux x64

    我其实还是可以接受~下 . 开头文件的不规范的
    只是这货居然在~下自动生成一个 XXXX.log 这不是缺心眼么

      Leniy · June 26, 2013 at 15:30

      Google Chrome 27.0.1453.116 Google Chrome 27.0.1453.116 Windows 7 Windows 7

      是啊。我这也是第一次见到不干正事首先生成log文件的程序

Leniy · June 26, 2013 at 08:53

Google Chrome 27.0.1453.116 Google Chrome 27.0.1453.116 Windows 7 Windows 7

神的思考

Leave a Reply to Leniy Cancel reply

Your email address will not be published. Required fields are marked *