Хм, не уверенный здесь, но возможно проблема состоит в том, что ваша главная нить закончена настолько быстро, что у фонового потока (в котором Отправка работает асинхронно) нет времени на принятие мер?
Чтобы проверить это, можно попытаться вставить задержку:
for (c <- country)//Here we spawn a background thread!
println(c)
Thread.sleep(500)//So let's wait half a second for it to work
Конечно, в реальной программе вы никогда не должны должны быть делать это.
Другая возможность для задержки просто readLine()
в конце основного.