我在scala中写了这个,它不会编译:
class TestDoubleDef{
def foo(p:List[String]) = {}
def foo(p:List[Int]) = {}
}
Run Code Online (Sandbox Code Playgroud)
编译通知:
[error] double definition:
[error] method foo:(List[String])Unit and
[error] method foo:(List[Int])Unit at line 120
[error] have same type after erasure: (List)Unit
Run Code Online (Sandbox Code Playgroud)
我知道JVM没有对泛型的原生支持,所以我理解这个错误.
我可以写包装List[String],List[Int]但我很懒:)
我很怀疑,但是,有没有另一种方式表达List[String]不是同一种类型List[Int]?
谢谢.
我的电路板在SPI上集成了STM32微控制器和SD/MMC卡,并以48 ksamples/s采样模拟数据.我正在使用Keil Real-time Library RTX内核和ELM FatFs.
我有一个高优先级的任务,通过DMA以40个样本(40 x 16位)的块来捕获模拟数据; 数据通过长度为128的队列(构成大约107毫秒的样本缓冲)传递给第二个低优先级任务,该任务将样本块整理成2560字节缓冲区(这是512字节SD扇区大小和40个样本块大小).当此缓冲区已满(32个块或约27毫秒)时,数据将写入文件系统.
通过检测代码,我可以看到每32个块,数据被写入并且写入大约需要6 ms.这持续到(在FAT16上)文件大小达到1 MB,当写操作需要440 ms时,此时队列填充并且中止日志记录.如果我将卡格式化为FAT32,则"long-write"事件之前的文件大小为4 MB.
发生这种情况的文件大小在FAT16和FAT32之间发生变化的事实告诉我,它不是卡的限制,而是文件系统在1 MB或4 MB边界上执行需要额外时间的事情.
似乎我的任务正在及时安排,并且ELM FatFs代码仅在1 MB(或FAT32为4)边界消耗时间.
有解释或解决方案吗?这是一个FAT问题,或者更确切地说是ELM的FatFs代码?
我考虑过使用多个文件,但根据我的经验,FAT不能很好地处理单个目录中的大量文件,这也会失败.根本不使用文件系统并且写入原始卡是可能的,但理想情况下我想在带有标准驱动程序且没有特殊软件的PC上读取数据.
我想到尝试编译器优化来缩短写入时间; 这似乎有效果,但写入时间似乎变化多了.在-O2我确实得到了一个8 MB的文件,但结果不一致.我现在不确定文件大小和失败点之间是否存在直接关联; 我已经看到它在不同的文件长度上以这种方式失败,没有特定的边界.也许这是卡性能问题.
我进一步对代码进行了检测并采用了一种分治方法.这种观察结果可能会使问题过时,以前所有的观察结果都是错误的或是红色的.
我最后将其缩小为一个多扇区写入(CMD25)的实例,其中卡的"等待就绪"轮询对于块5中的前三个扇区有时需要174 ms.等待就绪的超时设置为500毫秒,所以它会很开心 - 等待那么长时间.在一般情况下,迭代地使用CMD24(单扇区写入)要慢得多 - 每个扇区140毫秒 - 而不是偶尔.
所以这似乎是卡的一种行为.我将努力尝试一系列卡SD和MMC.
我想使用jstl在javascript中迭代HashMap.有可能这样做吗?
function checkSelection(group,tvalue){
alert(group);
alert(tvalue);
<c:forEach items="${configuredGroupMap}" var="groupMap">
alert("aa<c:out value="${groupMap.key}"/>");
<c:if test="${groupMap.key==group}">
alert("t<c:out value="${groupMap.key}"/>");
<c:if test="${groupMap.value==tvalue}">
alert("equal");
</c:if>
</c:if>
</c:forEach>
}
Run Code Online (Sandbox Code Playgroud)
它不会进入内部
<c:if test="${groupMap.key==group}">
Run Code Online (Sandbox Code Playgroud) 当我std::map使用find或访问元素时,你知道它的性能是否有任何差异operator []?
一个返回一个iterator,另一个返回const ref到对象.
由于STL背后的所有背后,哪一个可能更快?
我需要一个递归查询的帮助.假设如下表:
CREATE TEMPORARY TABLE tree (
id integer PRIMARY KEY,
parent_id integer NOT NULL,
name varchar(50)
);
INSERT INTO tree (id, parent_id, name) VALUES (3, 0, 'Peter'), (2,0, 'Thomas'), (5,2, 'David'), (1, 0, 'Rob'), (8, 0, 'Brian');
Run Code Online (Sandbox Code Playgroud)
我可以使用以下查询检索所有人及其子女的列表:
WITH RECURSIVE recursetree(id, parent_id) AS (
SELECT id, parent_id FROM tree WHERE parent_id = 0
UNION
SELECT t.id, t.parent_id
FROM tree t
JOIN recursetree rt ON rt.id = t.parent_id
)
SELECT * FROM recursetree;
Run Code Online (Sandbox Code Playgroud)
如何按顺序列出它们,还可以按名称对第一级项目进行排序?例如,所需的输出将是:
id, parent_id, name
8, 0, "Brian"
3, …Run Code Online (Sandbox Code Playgroud) 我想在带有Vista和Visual Studio 2010的ma PC上安装boost库.
首先从官方网站下载升级1.42并解压缩到c:\ boost_1_42_0然后我调用了bootstrap.bat但是我得到了一些错误:
c:\boost_1_42_0>bootstrap.bat Building Boost.Jam build engine Failed to build Boost.Jam build engine. Please consult bjam.log for furter diagnostics. You can try to obtain a prebuilt binary from http://sf.net/project/showfiles.php?group_id=7586&package_id=72941 Also, you can file an issue at http://svn.boost.org Please attach bjam.log in that case.
在bjam.log中我发现:
Setting environment for using Microsoft Visual Studio 2010 x86 tools. ERROR: Cannot determine the location of the VS Common Tools folder. ### ### Using 'vc10' toolset. ### c:\boost_1_42_0\tools\jam\src>if exist bootstrap …
有没有办法在Html Helper方法中获取请求对象.
我想知道是否存在使用默认Image替换不存在的文件的文件.因此,我需要Request Object和它的Method MapPath(路径).
有人有个主意吗?
托马斯
复制包含char数组的两个结构的标准方法是什么?
这是一些代码:
#include stdio.h>
#include string.h>
#include stdlib.h>
typedef struct {
char* name;
char* surname;
} person;
int main(void){
person p1;
person p2;
p1.name = (char*)malloc(5);
p1.surname = (char*)malloc(5);
strcpy(p1.name, "AAAA");
strcpy(p1.surname, "BBBB");
memcpy(&p2, &p1, sizeof(person));
free(p1.name);
printf("%s\n", p2.name);
return 0;
}
Run Code Online (Sandbox Code Playgroud)
该行printf("%s\n", p2.name);不打印,因为我释放了缓冲区.
我的结构的问题是它们比struct更大person.它们包含数百个char指针,我必须逐个复制每个成员.
是否有另一种方法来复制包含char数组的两个结构而不使用malloc和strcpy为每个成员?
我写了2个webservices,一个使用Jax-WS,另一个使用Jax-RPC.他们只返回一个字符串.
我用jMeter对它进行了压力测试,奇怪的是,因此Jax-RPC的速度要快一些.
在性能方面(响应时间,CPU时间,堆),我何时真正从Jax-WS中获利?我该如何证明呢?
谢谢你的时间!=)
c++ ×3
java ×2
boost ×1
c ×1
compilation ×1
embedded ×1
fat ×1
filesystems ×1
html-helper ×1
java-ee ×1
javascript ×1
jax-rpc ×1
jax-ws ×1
jsp ×1
jstl ×1
overloading ×1
pointers ×1
postgresql ×1
recursion ×1
scala ×1
sd-card ×1
sql ×1
stl ×1
struct ×1
type-erasure ×1
typeclass ×1
websphere-7 ×1