Это минимальные шаги, требуемые связываться между двумя хостами по UDP.
Этот пример иллюстрирует, как можно использовать объекты UDP связаться между двумя специализированными хостами. В этом примере вы знаете имена обоих хостов и портов, которые они используют для связи друг с другом. Один хост имеет имя doejohn.dhpc
, с помощью локального порта 8844; и другим хостом является doetom.dhpc
, с помощью локального порта 8866
. Обратите внимание на то, что каждый хост рассматривает порт другого хоста как RemotePort
:
Создайте интерфейсные объекты — Создают объект UDP на каждом хосте, ссылаясь на другой как на удаленный хост.
На хосте doejohn.dhpc
создайте u1
. Конструктор Object задает имя удаленного хоста, удаленного порта на том другом хосте и локального порта, чтобы использовать на машине, где этот объект создается:
u1 = udp('doetom.dhpc', 'RemotePort', 8866, 'LocalPort', 8844)
На хосте doetom.dhpc
создайте u2
:
u2 = udp('doejohn.dhpc', 'RemotePort', 8844, 'LocalPort', 8866)
Соединитесь объекты — Открывают оба объекта UDP, так, чтобы каждый мог связаться с другим хостом.
На хосте doejohn.dhpc
откройте u1
:
fopen(u1)
На хосте doetom.dhpc
откройте u2
:
fopen(u2)
Запишите и считайте данные — Связь между двумя хостами является теперь вопросом отправки и получения данных. Запишите сообщение от doejohn.dhpc
до doetom.dhpc
.
На хосте doejohn.dhpc
запишите данные к удаленному хосту через u1
:
fprintf(u1, 'Ready for data transfer.')
На хосте doetom.dhpc
считайте данные, входящие из удаленного хоста через u2
:
fscanf(u2) ans = Ready for data transfer.
Разъединитесь и вымойтесь — Когда вам больше не нужен u1
на хосте doejohn.dhpc
, необходимо отключить его и удалить его из памяти и из рабочей области MATLAB®.
fclose(u1) delete(u1) clear u1
Когда вы больше не нуждаетесь в u2
, выполняете подобную очистку на хосте doetom.dhpc
.
fclose(u2) delete(u2) clear u2