问题描述
在Go中,我从Dialer创建连接(带有超时):
from django.core.exceptions import ObjectDoesNotExist
.
.
.
if model.objects.count() > 0:
try:
obj = model.objects.get(u_name_id = self.u_name_id)
print("hell")
raise ValidationError("You can only create 1 profile ")
except ObjectDoesNotExist:
pass # this is not problem for you because this user have not object
但是,我还可以设置连接的截止日期:
dt<-data.frame(Start=c(5,15,22),End=c(10,21,38))
这是多余的,还是在此处设置超时和截止日期有功能上的差异?
解决方法
这些完全不同。
net.Dialer用于建立连接。 最后期限(或超时)适用于建立连接。分别在Timeout
和Deadline
字段中引用文档:
超时是拨盘等待拨号的最长时间 连接完成。
最后期限是拨号后的绝对时间点 失败。
另一方面,net.Conn保持已建立的连接。 超时适用于连接上的读/写操作。 net.Conn
的文档中也明确指出了这一点:
SetDeadline设置与 连接。这等效于同时调用SetReadDeadline和 SetWriteDeadline。
请注意,这是一组常见的超时设置(其中之一):一个用于建立连接,另一个用于对已建立的连接进行操作。