I pushed to Gerrit a patch 876 which eliminates all "_singlethread" files, responding to JIRA IOT-509. These files represent a significant fraction of technical debt IoTivity has accrued.
My interest in doing this is my concern about applying IPv6 to them. I decided it would be easier to eliminate them than to deal with them. I started this on Monday. IOT-509 provides the technical approach used. Here are some stats. * 43 files affected. * 27 files with substantial changes. * 17 '_singlethread' files deleted. * 6122 lines changed. * 381 lines support the new single thread paradigm. * 450 lines are mods to Ethernet and Wifi linux 'server' code to allow testing and debugging on Ubuntu. * 5390 lines are from the 17 deleted files. Of course, this required no changes to API or any other externally visible part of IoTivity. I'm sure the performance is no worse than the previous single thread solution. (I suspect the performance is indistinguishable from multithread performance.) I made no changes to multi-threaded operation. The only problem at this point is that Jenkins reports that it fails to build on Arduino because of an include file problem, which I suspect someone with an Arduino environment could find a fix in five minutes. No change was made to Arduino code. If we push this to master quickly, it will save lots of work for everybody. While Gerrit shows conflicts with five other patch sets, I suspect the collisions are tiny and can be resolved easily. John Light Intel OTC OIC Development -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.iotivity.org/pipermail/iotivity-dev/attachments/20150501/c0bfdeb1/attachment.html>
