当我尝试发送消息时,如下所示:

(let* ((temp-buffer message)
 (out-vector (make-array (length temp-buffer)
             :element-type'(unsigned-byte 8)
             :initial-contents temp-buffer))
 (s (ccl:make-socket :remote-host host :remote-port port :type :datagram )))
(ccl:send-to s out-vector (length out-vector))
(ccl::close s))

我收到以下错误:
on #<CCL::UDP-SOCKET #x302000D9FCFD> :
Socket is already connected (error #56) during sendto

最初,此代码是有效的。
任何人都可以解释此错误消息以及如何解决它。
谢谢你的帮助。

最佳答案

这似乎有效。

(let* ((temp-buffer message)
       (out-vector (make-array (length temp-buffer)
                               :element-type'(unsigned-byte 8)
                               :initial-contents temp-buffer))
       (s (ccl:make-socket :type :datagram)))
  (ccl:send-to s out-vector (length out-vector) :remote-host host :remote-port port)
  (ccl::close s))

09-11 19:23