Собщение на сервер приходит после завершения программы

server
ios

#1

Отправляю с клиента (IOS) сообщение на сервер (Java) через CFStream. Но приходят они только тогда, когда я перезапущу клиента. Сообщения от сервера клиенту приходят нормально.

Код клиента:

var username = "hello"

var outputStream: OutputStream!

var readStream: Unmanaged<CFReadStream>?
var writeStream: Unmanaged<CFWriteStream>?

CFStreamCreatePairWithSocketToHost(kCFAllocatorDefault,
                                   "172.20.10.3" as CFString,
                                   8080,
                                   &readStream,
                                   &writeStream)

outputStream = writeStream!.takeRetainedValue()

outputStream.schedule(in: .current, forMode: .default)

outputStream.open()

outputStream.write(username, maxLength: username.count)

Код Сервера

    //inMessage это Scanner
    System.out.println("Подключение установлено"); 

    /*на этой строчке программа останавливается и продолжается, только когда программа клиента заново подключится и функция вернет значение*/
    String clientMessage = inMessage.next();

    // выводим в консоль сообщение (для теста) 
    System.out.println("Сообщение: " + clientMessage);