Tcp 서버에서 데이터 받을때
Ethernet Chips
No replies yet. Be the first to reply.
Join the discussion.
Ethernet Chips
No replies yet. Be the first to reply.
Join the discussion.
Share projects and connect with makers.
Joined before the site update? first.
New to WIZnet Makers?
We sent a verification link to your address. Open it to activate your account, then log in.
Accounts from this email provider are reviewed by an administrator after verification. Approval usually takes one business day.
Already have an account?
Enter your email address. If it belongs to an account, we'll send a link to set a new password. Members who joined before the site update use this to set their password.
If an account uses that address, we sent a link to set a new password. The link works once and expires in 30 minutes.
Know your password?
Need an account?
RE: Tcp 서버에서 데이터 받을때
by bangbh ·
안녕하세요. Wiznet의 Peter입니다.
목적이 명확하지 않아 정확하게 말씀드릴수는 없으나 단순히 데이터를 계속 축적하시려면 별도의 memory buffer를 두셔야 합니다.
Queue 등을 사용하셔서 내용을 쌓이게 하고 그 데이터를 다시 SD CARD 등에 저장하는 방법이 좋을 듯 싶습니다.
임베디드 시스템의 특성상 메모리에 한계가 있으니까요.
정말 단순히 한개의 메모리 변수에 데이터를 누적시킬수는 있으나 절대 추천드리고 싶지 않습니다.
데이터를 읽어오실 때 단순히 이전에 받은 데이터 사이즈 만큼 메모리 변수의 포인터에 더해서 읽어오시면 됩니다.
-_-;;; 설명이 이상한가요? 하하;;;;
예를 들면 이런거죠.
recv(sn, buf+이전에 받은 데이터 사이즈, size-이전에 받은 데이터 사이즈);
도움이 되셨으려나 모르겠네요.
수고하세요 ^^
RE: Tcp 서버에서 데이터 받을때
by sinwho ·
답변 감사합니다
버퍼에 데이터를 넣을려고 하는이유가
원형 큐로 들어온 데이터를 저장하고 데이터가 있을시 바로 큐에서 데이터를 빼내서 처리를 할려고 합니다
그냥 받을 경우 받자마자 데이터 처리를 다하지 못했는데 또 데이터가 들어오면 기존 데이터가 다 날아가 버리니깐요
다른 버퍼에 복사를 하고 데이터를 처리 한다고 해도 순간적인 데이터 처리시간이 늦어버리면
데이터를 잃어버리지 않을까 해서요
감사합니다
해보고 안되면 염치 불구 하고 또 질문하러 오겠습니다^^
RE: Tcp 서버에서 데이터 받을때
by bangbh ·
네 맞습니다.
큐에 넣었다가 처리하시는 방법이 가장 좋습니다.
데이터 로스나 처리 미스를 최소화시킬 수 있겠죠.
화이팅 하세요~ ^^