Как решить pty master, пиши slave read. Мастер записи данных мастер также будет читать?

void epoll_func(epoll_event event){
char str[BUFSIZE] = {'\0'};
int c =0;

if(event.data.fd ==  connfd && EPOLLIN){
while(true){
c = read( connfd, str, BUFSIZE);

write( 1, str, c);
if(c<BUFSIZE)
break;
}
}else if( event.data.fd == 0 && EPOLLIN ){
while(true){
c = read( 0, str, BUFSIZE);

send( connfd, str, c, 0);
if(c<BUFSIZE)
break;
}
}

}

Записывать данные в мастер, а также читать данные для записи самостоятельно. Как сделать?

Спасибо большое.

-2

Решение

Вы испортили полученную структуру epoll_event, которая состоит из поля события и union содержащий данные. Я полагаю, вы хотите сделать что-то вроде следующего:

struct epoll_event e;

uint32_t e_type = e.events;
int fd = e.data.fd;

if (fd == myfd) {
if (events && EPOLLIN)) {
/* my watched fd and can be read from */
}
if (events && EPOLLOUT) {
/* my watched fd and can be written to */
}
}
0

Другие решения

Других решений пока нет …

По вопросам рекламы [email protected]