我在initramfs.c中发现了这个,我之前没有看过这个语法,有人可以解释它在做什么吗?
static __initdata int (*actions[])(void) = {
[Start] = do_start,
[Collect] = do_collect,
[GotHeader] = do_header,
[SkipIt] = do_skip,
[GotName] = do_name,
[CopyFile] = do_copy,
[GotSymlink] = do_symlink,
[Reset] = do_reset,
};
Run Code Online (Sandbox Code Playgroud)
源代码(第366行):initramfs.c
我在其中一个团队中遇到了一个问题.其中一个人在我看来有点SQL快乐,并希望将一个小型python FTP下载器生成的日志信息存储到数据库中,而不仅仅是很好的格式文本文件.现在我一直认为只有在加速数据库时才能使用数据库,或者为数据提供更可靠的接口.你有什么看法?
谢谢!
编辑:在这个特定的实例中,数据将每天增长大约100行,并被处理一次并丢弃.虽然这个案例是直接关注的,但我对一般答案更感兴趣.
编辑2:感谢您的所有回复!我用最多的选票作为答案标记了答案,因为我觉得它简明扼要地说明了你们所做的大部分要点,但我会观察并看看是否还有其他问题.
我正在研究学习Lua,因为它有一些有趣的功能(速度是一个),我注意到自2006年以来没有功能更新.Lua开发已经停止了吗?如果没有,我在哪里可以了解最近的进展?
编辑:所有大写Lua是你在凌晨3点发布SO时发生的事情.
到目前为止我所拥有的:
function! GetMarker()
return system('echo $random `date` | md5sum | cut -d" " -f1')
endfunction
Run Code Online (Sandbox Code Playgroud)
我希望能够做到:getmarker
并让它在我的光标处插入该系统命令的输出,没有新行.
此外之间有什么区别function!
和function
?
编辑:在你问任何人之前,我需要随机字符串来标记我的代码中的部分,以便我可以通过在我的todo wiki中引用我的笔记再次找到它们.
我正在跟踪我们的一个驱动程序中的"原子调度"错误,并且想知道ioctl是否是原子上下文.此外,如果任何人有任何关于如何进出原子上下文和它们发生的常见位置的分享,那将是有帮助的.
linux driver linux-device-driver linux-kernel embedded-linux
我在查看Win32 gui代码时经常会看到这个.我的假设是它是一个标准的按位或者,但我也偶尔在C#中看到它,似乎会有一个更好的(更高级别)方式来做同样的事情.无论如何,这是一个例子:
MessageBox(NULL, "Window Creation Failed!", "Error!", MB_ICONEXCLAMATION | MB_OK);
Run Code Online (Sandbox Code Playgroud)
谢谢,
西莫