使用 Julia 设置 UDP
Setting up UDP with Julia
如何使用Julia在局域网中设置UDP通信接口?我似乎在 Julia 存储库中认出了 Base/socket.jl,但几乎没有任何关于如何使用这些函数的文档。
是的,现在仍然缺少有关 UDP 的文档,但也许我们可以通过 the TCP example 学习如何使用 UDP。这是我的测试代码。
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
请注意,如果您使用的是 julia 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)
如何使用Julia在局域网中设置UDP通信接口?我似乎在 Julia 存储库中认出了 Base/socket.jl,但几乎没有任何关于如何使用这些函数的文档。
是的,现在仍然缺少有关 UDP 的文档,但也许我们可以通过 the TCP example 学习如何使用 UDP。这是我的测试代码。
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
请注意,如果您使用的是 julia 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)