如何使用朱莉娅在一个局域网内建立UDP通信接口? 我似乎认识到在朱莉娅回购基地/ socket.jl但几乎没有关于如何使用功能的任何文档。
Answer 1:
是啊,对UDP文档仍然是现在下落不明,但也许我们可以学习如何通过使用UDP 的TCP例子 。 这是我的测试代码。
julia> VERSION
v"0.4.0-dev+6494"
julia> @async begin
udpsock = UDPSocket()
bind(udpsock,ip"127.0.0.1",2000)
while true
println(bytestring(recv(udpsock)))
end
end
Task (waiting) @0x000000010c2a1900
julia> sock = UDPSocket()
UDPSocket(Ptr{Void} @0x00007f91e430d530,1,Condition(Any[]),Condition(Any[]),Condition(Any[]))
julia> send(sock,ip"127.0.0.1",2000,"Hello World from the UDP")
Hello World from the UDP
请注意,如果您使用的朱莉娅V0.3。*,你应该使用UdpSocket()
代替UDPSocket()
更新:我忘了初始化(使用bind()
的插座,这将导致close(sock)
抛出一个错误。
julia> sock = UDPSocket()
UDPSocket(Ptr{Void} @0x00007f91e430d530,1,Condition(Any[]),Condition(Any[]),Condition(Any[]))
julia> bind(sock,ip"127.0.0.1",1000)
true
julia> send(sock,ip"127.0.0.1",2000,"Hello World from the UDP")
Hello World from the UDP
julia> close(sock)
文章来源: Setting up UDP with Julia