小编nam*_*ked的帖子

垃圾收集

我无法理解垃圾收集中的一些事情.

首先,数据如何分配空间?即在堆栈或堆上(据我所知,所有静态或全局变量都在堆栈上分配空间,局部变量在堆上分配空间).

其次,GC运行堆栈或堆上的数据?即像Mark/Sweep这样的GC算法会将堆栈上的数据称为root set right吗?然后通过检查堆上的哪些变量引用根集来映射堆上的所有可到达变量.

如果程序没有全局变量怎么办?算法如何工作呢?

问候,黑暗

language-agnostic computer-science garbage-collection

8
推荐指数
1
解决办法
1244
查看次数

Unix中的硬链接和符号链接

我只是想澄清硬/符号链接是否实际上是一个创建的文件?

我跑了命令:

ln source hardlink
ln -s source softlink
Run Code Online (Sandbox Code Playgroud)

- ls命令将此2个链接显示为文件.

所以我的查询是,确实ln / ln -s创建了一个文件?

问候,darkie15

unix symlink hardlink

8
推荐指数
1
解决办法
5741
查看次数

在Scheme中向List添加元素

下面是我的代码,它将列表的car元素(carVal)和列表(初始化为空)作为参数.我想将元素追加到列表中,但同样不起作用.

(define populateValues
   (lambda (carVal currVal)
      (append currVal(list carVal ))
       (display currVal)))
Run Code Online (Sandbox Code Playgroud)

显示屏始终显示空列表().谁能帮我理解为什么?

scheme list racket

8
推荐指数
2
解决办法
4万
查看次数

Scheme中的延续(call/cc)

我需要了解我即将进行的考试中的Continuations in Scheme,我根本不知道延续.任何人都可以建议我如何继续学习延续的来源?

问候,

darkie

scheme continuations callcc

7
推荐指数
1
解决办法
3269
查看次数

为什么char []比String更好? - Java

参考链接:文件IO调优,最后一节标题为"进一步调整",作者建议使用char []来避免为n文件中的行生成String对象,我需要了解它是怎么做的

char[] arr = new char{'a','u','t','h', 'o', 'r'}

与...不同

String s = "author"

在内存消耗或任何其他性能因素方面?String对象是否内部存储为字符数组?我觉得很傻,因为我以前从没想过这个.:-)

java string character

7
推荐指数
2
解决办法
4700
查看次数

如何为多线程应用程序创建测试环境

所有,

最近我开发了一个代码,据说是一个线程安全的类.现在我说'所谓'的原因是因为即使在使用sync'ed块,不可变数据结构和并发类之后,由于JVM的线程调度环境,我无法在某些情况下测试代码.即我只在纸上有测试用例但无法复制相同的测试环境.是否有任何具体的指导或有经验的成员在这里可以分享如何测试多线程环境.

java testing concurrency multithreading unit-testing

6
推荐指数
1
解决办法
546
查看次数

Java中Collection类的性能

所有,

我一直在浏览很多关于各种Action类的性能的网站,包括添加元素,搜索和删除.但我也注意到它们都提供了不同的测试环境,即操作系统,内存,线程运行等.

我的问题是,是否有任何网站/材料在最佳测试环境基础上提供相同的性能信息?即,配置不应成为任何特定数据结构性能不佳的问题或催化剂.

[更新]:示例,HashSet和LinkedHashSet都具有插入元素的复杂度O(1).但是,Bruce Eckel的测试声称,LinkedHashSet的插入时间比HashSet要多[http://www.artima.com/weblogs/viewpost.jsp?thread=122295].那么我还应该使用Big-Oh表示法吗?

java collections performance

6
推荐指数
3
解决办法
3072
查看次数

使用ggplot2 - R的geom_bar()查询

我有一个类似的数据框如下:

mapDF <- structure(list(var = c(11L, 3L, 4L, 15L, 19L, 17L, 1L), approvals = c(10.5233545765422, 
67.9809421770218, 9.66394835013545, 2.93736399165075, 3.36787205222721, 
4.0168261757783, 1.50969267664431)), .Names = c("var", "approvals"
), row.names = c(NA, -7L), class = "data.frame")
Run Code Online (Sandbox Code Playgroud)

当我尝试使用上面的数据框创建条形图时使用:

gplot <- ggplot(mapDF, aes(x= mapDF[1], y= mapDF[2])) + geom_bar()
Run Code Online (Sandbox Code Playgroud)

..我收到以下消息,没有任何内容出现在RStudio的'Plots'部分:

Don't know how to automatically pick scale for object of type data.frame. Defaulting to continuous
Don't know how to automatically pick scale for object of type data.frame. Defaulting to continuous
Error: stat_bin requires the …
Run Code Online (Sandbox Code Playgroud)

r ggplot2

6
推荐指数
1
解决办法
9755
查看次数

为什么编码语言/数据库需要编码和解码?

虽然我能够理解维基百科的编码和解码的含义,但我无法理解为什么每种编程语言都需要它们?如果答案与能够从外部源(如数据库)读取数据有关,那么为什么他们中的许多人采用不同的编码方案呢?

Ex Python有一个默认的ASCII编码,
Java依赖于底层操作系统,
DB2数据库有IBM-1252

language-agnostic encoding

6
推荐指数
1
解决办法
1万
查看次数

重新排序dcast数据框

是否可以重新排序数据帧的列,这是dcast()调用Ex的结果

鉴于数据:

> dput(copyOfRes)
structure(list(docName = c("doc2", "doc1", "doc1", "doc1", "doc1", 
"doc1", "doc1", "doc1", "doc1", "doc1", "doc1", "doc2"), day_of_week = c(11, 
11, 11, 11, 11, 11, 11, 11, 11, 11, 11, 2)), .Names = c("docName", 
"week_number"), row.names = c(NA, -12L), class = "data.frame")
Run Code Online (Sandbox Code Playgroud)

所以,当我使用dcast()时如下:

library(reshape2)
dcast(copyOfRes, docName ~ week_number, length)
Run Code Online (Sandbox Code Playgroud)

结果是:

  docName 2 11
1    doc1 0 10
2    doc2 1  1
Run Code Online (Sandbox Code Playgroud)

我希望数据框的值减小week_number如下:

  docName 11  2
1    doc1 10 0
2    doc2 1  1
Run Code Online (Sandbox Code Playgroud)

我试过了dcast(copyOfRes, docName ~ …

r dataframe

6
推荐指数
2
解决办法
4065
查看次数