From 57a40e9576c70958b22e1c77fe5b62521b707b55 Mon Sep 17 00:00:00 2001 From: Tony Garnock-Jones Date: Tue, 6 Mar 2018 11:12:57 +0000 Subject: [PATCH] Asynchronously send UDP packets. Switch from synchronous to asynchronous UDP transmission, in case DNS resolution takes a long time or fails. Specifically, in case of failure, previously the UDP actor would crash, whereas now the packet is just "dropped". --- racket/syndicate/drivers/udp.rkt | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) diff --git a/racket/syndicate/drivers/udp.rkt b/racket/syndicate/drivers/udp.rkt index ac09890..75f35ee 100644 --- a/racket/syndicate/drivers/udp.rkt +++ b/racket/syndicate/drivers/udp.rkt @@ -93,7 +93,7 @@ [(message (inbound (? udp-packet? p))) (transition s (message p))] [(message (udp-packet _ (udp-remote-address host port) body)) - (udp:udp-send-to socket host port body) + (thread (lambda () (udp:udp-send-to socket host port body))) #f] [_ #f])) (void)