如果我这样做User.all.pluck(:email)
那就行了.
但如果我这样做
arr = Array.new
arr = User.all
Run Code Online (Sandbox Code Playgroud)
然后
arr.pluck(:email)
Run Code Online (Sandbox Code Playgroud)
这引起了以下错误
undefined method `pluck' for #<Array:0x007f4ff8daf3c8>
Run Code Online (Sandbox Code Playgroud)
这意味着我不能使用数组,所以我们如何从上面的一行记录数组中获取特定的字段值. 我不想循环遍历数组中的每个记录.
在了解Linux内核第3版中,它说:
共享库在提供文件内存映射的系统上特别方便,因为它们减少了执行程序所需的主内存量.当动态链接器必须将共享库链接到进程时,它不会复制目标代码,而只会执行库文件相关部分到进程地址空间的内存映射.这允许包含库的机器代码的页面框架在使用相同代码的所有进程之间共享.显然,如果程序已静态链接,则无法共享.(第817页)
我对此感兴趣,想要在C中编写一个小程序来验证,给出两个pid作为输入,例如两个gedit进程,然后从页面帧中获取要共享的地址信息.有谁知道怎么做?从那本书中,我认为来自两个或更多gedit进程的bss段和文本段地址是相同的,这是正确的吗?