My understanding is that parameters are copied between threads, but I'm not sure how this interacts with things like file ports, network connections, etc. Would the following code be problematic?
(define conn (make-parameter))
(define s (udp-open-socket))
(udp-bind! s #f 12345)
(conn s)
(thread (thunk (udp-send-to (conn) "8.8.8.8" 55555 #"hi from bob")))
(thread (thunk (udp-send-to (conn) "8.8.8.8" 55555 #"hi from fred")))