相关疑难解决方法(0)

使用太字节RAM的速度有多快1.5 gc?

Java不能使用太字节RAM,因为GC暂停时间太长(几分钟).随着Go GC的最新更新,我想知道它的GC暂停是否足够短,可以使用大量的RAM,例如几兆兆字节.

这有什么基准吗?我们现在可以使用垃圾收集语言吗?

garbage-collection go

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

为什么Go可以将GC暂停降低到1ms以下而JVM没有?

所以有:https://groups.google.com/forum/?fromgroups#!topic/golang-dev/Ab1sFeoZg_8:

今天我向垃圾收集器提交了更改,这些更改使得典型的最坏情况下的停止世界时间小于100微秒.这应该特别改善具有许多活动goroutine的应用程序的暂停,这可能会显着延长暂停时间.

如果JVM用户长时间挣扎,那么高GC暂停就是其中之一.

什么是(架构?)约束阻止JVM将GC暂停降低到Go级别,但是不影响Go?

garbage-collection jvm go

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

Go源代码中提到的"安全点函数"是什么?

Go源代码的文件runtime/proc.go中,有许多注释涉及安全点函数,它们似乎与垃圾收集安全的时间点相关.但是,我找不到这些功能的任何定义.

什么是安全点功能,它们用于什么,以及这些功能的一些示例是什么?

go

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

在Go中分配了很多内存。怎么修?

数百MB的内存分配给5 MB的50个请求。内存已分配,不再释放。如何清除记忆?为什么会发生这种情况?

我已经在家用PC和VPS上的Ubuntu上进行了尝试

package main

import (
    "fmt"
    "io/ioutil"
    "net/http"
    "time"
)

func main() {
    fmt.Println("start")

    for i := 0; i < 50; i++ {
        go func() {
            DoRequest()
        }()
        time.Sleep(10 * time.Millisecond)
    }

    time.Sleep(10 * time.Minute)
}

func DoRequest() error {
    requestUrl := "https://blockchain.info/rawblock/0000000000000000000eebedea046425bd54626e6c56eb032e66e714d0141ea6"

    req, err := http.NewRequest("GET", requestUrl, nil)

    if err != nil {
        return err
    }

    req.Header.Set("user-agent", "free")

    httpClient := &http.Client{
        Timeout: time.Second * 10,
    }

    resp, err := httpClient.Do(req)

    if resp != nil {
        defer resp.Body.Close() …
Run Code Online (Sandbox Code Playgroud)

memory memory-leaks go

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

标签 统计

go ×4

garbage-collection ×2

jvm ×1

memory ×1

memory-leaks ×1