beduin01: асинхронное чтение файла? Посмотрите документацию к функции ReadFileEx. одним вызовом запускается выполнение действия, далее можно проверять состояние запроса, выполнилось чтение или ещё нет.
обработка без создания нового потока? представьте сервис, обрабатывающий поступающие запросы по очереди. тогда запросом на чтение файла мы лишь помещаем в эту очередь новый запрос.
к примеру, я делал однопоточный HTTP прокси-сервер, при этом к нему могли подключаться сотни клиентов одновременно. создавать новый поток на каждую мелочь не нужно, это потребляет ресурсы на переключение контекста
регистрация по никнеймам + кнопка "добавить контакт" с поиском по нику? UID как в аське или Tox?
или же у вас проблема именно создания соединения между конкретными пользователями без участия сервера? могут быть проблемы с NAT, гуглите UDP (есть и TCP) hole punching
Ваш код не шифрует файлы, а стирает их. Один и тот же путь дважды подряд открывается с параметрами "wb", хрень какая-то. Нужно 1) открыть файл по "rb" 2) считать файл в буфер 3) закрыть файл 4) зашифровать буфер 5) открыть целевой файл по "wb" 6) записать зашифрованные данные 7) закрыть целевой файл
TrackFox: повербанка по ссылке хватит на 4-5 полных зарядок. По параметрам подходит QIDIAN QD-188-ALT, 2-3 полных зарядок будет, если купить нормальные аккумуляторы вроде LG INR18650-MJ1 3500mAh
abcd0x00: я указал в комментарии (см ниже), что так делать не стоит и нужно передавать данные структурой в унифицированном формате.
На x86 машинах будет int 32 бита, little endian. Если big endian я еще видел в powerPC, то 16-битный int вживую не встречал - подскажите, где его можно увидеть? :) (А вот с long проблема была, на линуксе он 64 бита оказался, забывать о такой возможности нельзя)
Я на линуксовом сервере запускал OpenVPN, SSH и сайт, все на 443 порту при помощи сторонней программы, которая это разруливала, работало. Может и здесь что-то подобное
Александр: Александр: не бред, а ./ в начале пути означает текущую папку. Конечно в текущей папке нет папки home
Ну раз показывает, что он есть в /root/server, так и пишите /root/server/file.bin
Если речь про современный ПК, то у него есть оперативная память (RAM) и контроллер для работы с ней. Физически ячейка памяти это всего один бит, но для процессора работа с памятью выполняется по 8, 16, 32 и 64 бита. То есть чтение и запись таких "больших" ячеек может быть произведена за одну команду.
обработка без создания нового потока? представьте сервис, обрабатывающий поступающие запросы по очереди. тогда запросом на чтение файла мы лишь помещаем в эту очередь новый запрос.
к примеру, я делал однопоточный HTTP прокси-сервер, при этом к нему могли подключаться сотни клиентов одновременно. создавать новый поток на каждую мелочь не нужно, это потребляет ресурсы на переключение контекста