小编Tec*_*163的帖子

Golang - 什么是通道缓冲区大小?

我正在尝试创建一个异步通道,我一直在关注http://golang.org/ref/spec#Making_slices_maps_and_channels.

c := make(chan int, 10)         // channel with a buffer size of 10
Run Code Online (Sandbox Code Playgroud)

缓冲区大小是10是什么意思?具体的缓冲区大小是什么代表/限制?

channel go

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

使用net/http设置cookie

我正在尝试使用Go的net/http包设置cookie.我有:

package main

import "io"
import "net/http"
import "time"

func indexHandler(w http.ResponseWriter, req *http.Request) {
    expire := time.Now().AddDate(0, 0, 1)
    cookie := http.Cookie{"test", "tcookie", "/", "www.domain.com", expire, expire.Format(time.UnixDate), 86400, true, true, "test=tcookie", []string{"test=tcookie"}}
    req.AddCookie(&cookie)
    io.WriteString(w, "Hello world!")
}

func main() {
    http.HandleFunc("/", indexHandler)
    http.ListenAndServe(":80", nil)
}
Run Code Online (Sandbox Code Playgroud)

我尝试使用'cookies'谷歌搜索'Golang',但没有得到任何好结果.如果有人能指出我正确的方向,我将不胜感激.

cookies go

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

终止在Golang中使用os/exec启动的进程

有没有办法终止在Golang中使用os.exec启动的进程?例如(来自http://golang.org/pkg/os/exec/#example_Cmd_Start),

cmd := exec.Command("sleep", "5")
err := cmd.Start()
if err != nil {
    log.Fatal(err)
}
log.Printf("Waiting for command to finish...")
err = cmd.Wait()
log.Printf("Command finished with error: %v", err)
Run Code Online (Sandbox Code Playgroud)

有没有办法提前终止该过程,也许是在3秒后?

提前致谢

go

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

在golang中使用template.ParseFiles的多个文件

例如,我有

package main

import "html/template"
import "net/http"

func handler(w http.ResponseWriter, r *http.Request) {
    t, _ := template.ParseFiles("header.html", "footer.html")
    t.Execute(w, map[string] string {"Title": "My title", "Body": "Hi this is my body"})
}

func main() {
    http.HandleFunc("/", handler)
    http.ListenAndServe(":8080", nil)
}
Run Code Online (Sandbox Code Playgroud)

在header.html中:

Title is {{.Title}}
Run Code Online (Sandbox Code Playgroud)

在footer.html中:

Body is {{.Body}}
Run Code Online (Sandbox Code Playgroud)

去的时候http://localhost:8080/,我只看到"标题是我的标题",而不是第二个文件footer.html.如何使用template.ParseFiles加载多个文件?最有效的方法是什么?

提前致谢.

go go-templates

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

Python IMAP从指定的电子邮件地址搜索

我在Gmail的SMTP服务器上使用它,我想通过IMAP搜索发送到地址或从地址接收的电子邮件.

这就是我所拥有的:

mail = imaplib.IMAP4_SSL('imap.gmail.com')

mail.login('user', 'pass')
mail.list()
mail.select("[Gmail]/All Mail")

status, email_ids = mail.search(None, 'TO "tech163@fusionswift.com" OR FROM "tech163@fusionswift.com"')
Run Code Online (Sandbox Code Playgroud)

错误的最后一行是: imaplib.error: SEARCH command error: BAD ['Could not parse command']

不知道我应该如何在python中做那种OR语句imaplib.如果有人能够快速解释错误或指出我正确的方向,那将非常感激.

python imap imaplib

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

OpenSSL:打印EC_POINT的X和Y.

这是我的代码:

EC_KEY *eckey = EC_KEY_new();
EC_KEY_generate_key(eckey);
const EC_POINT *pub = EC_KEY_get0_public_key(eckey);
printf("%s", pub->X);
Run Code Online (Sandbox Code Playgroud)

我收到一条错误,上面写着"类型'struct ec_point_st'的不完整定义".我也尝试过:

EC_GROUP *curve = EC_GROUP_new_by_curve_name(NID_secp521r1);
BN_CTX *ecctx= BN_CTX_new();
EC_KEY *eckey = EC_KEY_new();
EC_KEY_generate_key(eckey);
const EC_POINT *pub = EC_KEY_get0_public_key(eckey);
NSLog(@"%s", EC_POINT_point2hex(curve, pub, POINT_CONVERSION_HYBRID, ecctx));
Run Code Online (Sandbox Code Playgroud)

在这种情况下,我收到一个EXC_BAD_ACCESS错误.如何打印(用于调试)公钥的x和y点?

openssl cryptography objective-c cryptoapi public-key-encryption

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

在Windows上使用curl/curl.h

我的c ++脚本中有以下内容:

#include "curl/curl.h"

当我尝试编译它时,我收到以下错误:

\ Users\username\Desktop\Temp\talkbot\main.cpp C:\ Users\username\Desktop\Temp\talkbot\C curl.h:没有这样的文件或目录.

所以我四处搜索并尝试下载cURL for windows.我最终登录http://www.paehl.com/open_source/?CURL_7.21.3并选择"不使用SSL下载".我下载了它,我只是得到了curl.exe.

我该怎么办该文件来获取curl.h?提前致谢.

curl libcurl dev-c++

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

pthread_create错误

我有

    client_sock = accept(server_sock, (struct sockaddr *)&client_name, &client_name_len);        
    if (pthread_create(&newthread , NULL, (void * ) accept_request, client_sock) != 0) {
            perror("pthread_create");
    }
Run Code Online (Sandbox Code Playgroud)

这只是整个脚本的一部分.每次我尝试编译它,我得到warning: passing argument 4 of 'pthread_create' makes pointer from integer without a cast

知道为什么会这样吗?提前致谢.

c

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

OnRequestPermissionsResult():找不到合适的方法来覆盖

我目前在Xamarin.Forms项目中有以下内容.

public class CameraPageRenderer : PageRenderer, ActivityCompat.IOnRequestPermissionsResultCallback  {
    ...
    public override void OnRequestPermissionsResult(int requestCode, string[] permissions, Permission[] grantResults) {
        Console.WriteLine("testing callback");
    }
    ...
}
Run Code Online (Sandbox Code Playgroud)

另外,我有以下要求相机许可.

var perms = new string[] {Manifest.Permission.Camera};
ActivityCompat.RequestPermissions((Context as Activity), perms, 0);
Run Code Online (Sandbox Code Playgroud)

如果我从OnRequestPermissionsResult中删除"覆盖",我不会收到任何消息.离开它,我得到编译错误"找不到合适的方法来覆盖".

c# xamarin.android xamarin

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

NSData到unsigned char*

我需要将NSData转换为类似的东西unsigned char b[16].这就是我到目前为止所拥有的.

NSData *c = [@"testingsomething" dataUsingEncoding:NSUTF8StringEncoding];
unsigned char *a = (unsigned char *)[c bytes];
NSLog(@"size of a is %ld", sizeof(a));
unsigned char b[16] = "testingsomething";
NSLog(@"size of b is %ld", sizeof(b));
Run Code Online (Sandbox Code Playgroud)

我得到的输出是;

size of a is 4
size of b is 16
Run Code Online (Sandbox Code Playgroud)

我怎样才能做到这一点?非常感谢帮助.

objective-c

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