Микроконтролери и електроника http://mcu-bg.com/mcu_site/ |
|
Препоръка за мултиплатформена socket библиотека (TCP/UDP)? http://mcu-bg.com/mcu_site/viewtopic.php?f=16&t=13077 |
Страница 1 от 1 |
Автор: | gicho [ Пон Юли 21, 2014 10:03 am ] |
Заглавие: | Препоръка за мултиплатформена socket библиотека (TCP/UDP)? |
По аналогия с темата за GUI библиотеките, търся лека, малка C/C++ библиотека за работа с TCP и UDP сокети. Изискванията са: - поддръжка на линукс и win32 (BSD API и Windows sockets) - да е лека в смисъла да има малко (или никакви) допълнителни зависимости - да има асинхронно API - т.е. да има някакъв wrapper на select() и threading - подходящ лиценз за комерсиален софтуер (статично свързан) - т.е. open source QT отпада (примерно MIT или BSD мисля че стават като лиценз) - производителност не се търси, удобно API е много по-ценно, както и добра документация и примери Гледах boost::asio и само asio, libevent и няколко други. Засега това най-ми допадна: http://sourceforge.net/projects/socketlibcpp/ но то не поддържа UDP. Пример за евентуална таргет платформа е openwrt. Т.е. един от тестовите варианти ще е за такава система. |
Автор: | miro_atc [ Пон Юли 21, 2014 10:11 am ] |
Заглавие: | Re: Препоръка за мултиплатформена socket библиотека (TCP/UDP |
а ти ли ще си я портваш? ако да, то най-доброто решение се казва lwIP |
Автор: | palavrov [ Пон Юли 21, 2014 12:12 pm ] |
Заглавие: | Re: Препоръка за мултиплатформена socket библиотека (TCP/UDP |
В момента работя с libevent ... става. Подкарах я без проблем под OpenWRT. Ако се спреш на нея ще ти дам едно рамо ако запъне някъде ... едит: lwIP също става, но там нещо API-то и особенно сорсовете хич не ми паснаха на темперамента |
Автор: | gicho [ Пон Юли 21, 2014 4:51 pm ] |
Заглавие: | Re: Препоръка за мултиплатформена socket библиотека (TCP/UDP |
Май ще е libevent-a - ще питам ако възникнат въпроси, благодаря. Видях че има алтернатива - libev. Имаш ли впечатления? |
Автор: | palavrov [ Пон Юли 21, 2014 5:07 pm ] |
Заглавие: | Re: Препоръка за мултиплатформена socket библиотека (TCP/UDP |
Гледах го и него - изглежда същото като фунцкионалност. Доколкото успях да схвана преди време libevent е имал разни трески за дялане които са провокирали автора на libev да го направи - но това е било преди ... сега libevent се е развил и се ползва в една камара сериозни проекти докато libev е по слабо разпостранено. Та поне за мен везните натежаха заради по голямата юзер база на libevent т.е. повече инфо как се ползва, по стабилно и т.н. Честно казано ползвал съм го само за един проект и откак съм го интегрирал не съм имал никаква причина да го пипам - работи си като пушка. В момента се заигравам с node.js - за ембедед платформи идва малко тежичко, ама с развитието на хардуера последните няколко години не е кой знае колко голям проблем да се подкара на някоя платка от рода на олимексиното или бигълбоне блек и т.н. - без да имам никаква идея що е то javascript успях за няколко часа да подкарам комуникация със устройството където ползвам libevent - сорса е няма и 100 линии ... |
Автор: | gicho [ Пон Юли 21, 2014 10:35 pm ] |
Заглавие: | Re: Препоръка за мултиплатформена socket библиотека (TCP/UDP |
Точно и node.js ми се въртеше в главата да погледна за тази задача, но само ц/ц++ минава. Имаш ли някакви референции към приложения или примери с libevent, който да са подходящи за запознаване и "копиране" на идеи? |
Автор: | palavrov [ Пон Юли 21, 2014 11:25 pm ] | ||||||||||||||||||
Заглавие: | Re: Препоръка за мултиплатформена socket библиотека (TCP/UDP | ||||||||||||||||||
Доколкото помня намерих доста примери с гугле - виж и моя код де, тривиално е:
Дотук е за приемане - малко по сложно е отколкото може да се напише но целта ми беше да е ясно след години кое какво прави Изпращането на данни по сокета е супер просто:
Поизрязах кода който няма отношение към libevent - тествано е, работи - може директно да го преправиш до каквото ти трябва ... |
Автор: | palavrov [ Пон Юли 21, 2014 11:33 pm ] | |||||||||
Заглавие: | Re: Препоръка за мултиплатформена socket библиотека (TCP/UDP | |||||||||
И виж само за куриоз node.js кода който комуникира колко е по кратък:
Това което не ми харсва е, че след време най вероятно ще се затрудня да го разбера какво точно прави и защо работи - бързо писане, трудна поддръжка след време ... виж на C е по бавно писане, но пък по евтина поддръжка по нататък ... |
Автор: | gicho [ Вто Юли 22, 2014 7:47 am ] |
Заглавие: | Re: Препоръка за мултиплатформена socket библиотека (TCP/UDP |
Благодаря! Изглежда идеално за начало. |
Автор: | ¶ [ Съб Авг 02, 2014 1:29 pm ] |
Заглавие: | Re: Препоръка за мултиплатформена socket библиотека (TCP/UDP |
Qt , не е малка, нито пък лека, но каквото съм написал на Qt го пускам без преработка на Windows/Linux. Сега вече има и Android, но още не съм го пробвал. |
Автор: | gicho [ Вто Авг 05, 2014 6:27 pm ] |
Заглавие: | Re: Препоръка за мултиплатформена socket библиотека (TCP/UDP |
Много е голямо qt-то - само core-а е няколко мегабайта. На някой от устройствата го има качено, но на други го няма и не мога да го качвам. Мисля че лиценза на open source варианта не позволява статично линкване, иначе това би било идеалния вариант? |
Страница 1 от 1 | Часовете са според зоната UTC + 1 час [ DST ] |
Powered by phpBB © 2000, 2002, 2005, 2007 phpBB Group http://www.phpbb.com/ |