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>

Reply via email to