小编Shi*_*iSi的帖子

解释SML函数及其类型

所以我有这个功能:

fn (f,g,x) => g(f(x));

这个函数的类型是:

('a -> 'b) * ('b -> 'c) * 'a -> 'c

函数是否表示f表示'a,g表示'b,x表示'c?在那种情况下,怎么会('a -> 'b)出现?因为这不代表f - > g?

如果这是一个模糊而写得不好的问题,请道歉.

有人可以向我解释如何计算该函数的类型吗?

谢谢.

types function sml

2
推荐指数
1
解决办法
103
查看次数

用于解析区域文件的 UNIX 脚本(这是最好的代码吗?)

发现以下内容:http://mike.murraynet.net/2009/08/23/parsing-the-verisign-zone-file-with-os-x/

\n\n

unix-masters 可以看一下它,看看它是否是在区域文件中收集唯一域名的最佳方法吗?

\n\n

对于 .NET 域:\ngrep \xe2\x80\x9c^[a-zA-Z0-9-]+ NS 。\xe2\x80\x9d net.zone|sed \xe2\x80\x9cs/NS 。//\xe2\x80\x9d|uniq >> netdomains.txt

\n\n

对于 .COM 域:\ngrep \xe2\x80\x9c^[a-zA-Z0-9-]+ NS 。\xe2\x80\x9d com.zone|sed \xe2\x80\x9cs/NS 。//\xe2\x80\x9d|uniq >> comdomains.txt

\n\n

对于 .EDU 域:\ngrep \xe2\x80\x9c^[a-zA-Z0-9-]+ NS 。\xe2\x80\x9d edu.zone|sed \xe2\x80\x9cs/NS 。//\xe2\x80\x9d|uniq >> edudomains.txt

\n

unix dns shell zones

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

Junit 阳性和阴性测试

我有一项作业,需要为我的代码创建一些测试。我们必须使用 Junit 测试,因此我决定对我的方法进行正面和负面测试。

例如,从 ArrayList 获取名称的一项测试我有正面和负面测试:

积极:

public void testGetNamePositive() { 
    Entry entry1 = new Entry("Susan Holmes", "122 Harringdale", "Workington", "CA14 2GH"); 
    assertEquals("Susan Holmes",entry1.getName()); 
} 
Run Code Online (Sandbox Code Playgroud)

消极的:

public void testGetNameNegative() { 
    Entry entry1 = new Entry("Susan Holmes", "122 Harringdale", "Workington", "CA14 2GH"); 
    assertFalse( entry1.getName() == "Alison"); 
} 
Run Code Online (Sandbox Code Playgroud)

我不确定的测试是这样的:

public void testEntryCreated() {
    Entry entry1 = new Entry("Susan Holmes", "122 Harringdale", "Workington", "CA14 2GH");
    assertNotNull(entry1);
}
Run Code Online (Sandbox Code Playgroud)

这有负面测试吗?

java junit unit-testing

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

我无法打开tomcat

我在Windows Vista上使用Tomcat 5.5.当我退出我的tomcat时,我无法再次运行它.

访问被拒绝.无法打开服务'Tomcat5'

为什么会这样?我该怎么做才能让它再次发挥作用?我每次退出tomcat都必须重新安装吗?

tomcat windows-services

0
推荐指数
1
解决办法
1528
查看次数

getpid()在进程的每个线程中返回不同的值吗?

在Pthreads手册页中,提到了

调用getpid(2)在每个线程中返回不同的值

在LinuxThreads部分中。

我创建了两个线程,并在其中打印了PID。但是,两者的PID都是相同的。

int main () 
{
    //pid_t pid;
    pthread_t tid[2];
    {
        printf("In main, PID : %d, PPID : %d\n", getpid(), getppid());
        pthread_create(&(tid[0]), NULL, &(f),NULL);
        pthread_create(&(tid[1]), NULL, &(g),NULL);
        pthread_join(tid[0], NULL);
        pthread_join(tid[1], NULL);
    }
    return 0;
}

void *g()
{
    printf("My PID in G : %d, PPID : %d\n", getpid(), getppid());
}

void* f()
{
    printf("My PID in F : %d, PPID : %d\n", getpid(), getppid());
}
Run Code Online (Sandbox Code Playgroud)

以下是我得到的输出,

总的来说,PID:5219,PPID:5214
我的PID在F中:5219,PPID:5214
我的PID在G中:5219,PPID:5214

我需要知道我是否在这里误解了什么。

c pthreads

0
推荐指数
1
解决办法
50
查看次数

标签 统计

c ×1

dns ×1

function ×1

java ×1

junit ×1

pthreads ×1

shell ×1

sml ×1

tomcat ×1

types ×1

unit-testing ×1

unix ×1

windows-services ×1

zones ×1