
Yigong Liu wrote:
to do next: . better, earlier error reporting (compile time). now many errors related to chord definitions are thrown at runtime as exceptions. since the type info is already available, we should be able to report them during compilation using some template programming. In boost, what should i use similar to Andrei Alexandrescu's STATIC_CHECK()?
There is a BOOST_STATIC_ASSERT
. more optimization, profiling and benchmarking with the same source code and simple Jamfile, the tutorials are much slower in Windows/VC++ than in Linux/g++ (my box has Centrino Duo).
You might want to directly look at the assembler output, it might simply have to do with some inlining that isn't done.
More info can be found: Source code: http://sourceforge.net/project/showfiles.php?group_id=157583 Documentation: http://channel.sourceforge.net/boost_join/libs/join/doc/boost_join_design.ht... Website: http://channel.sourceforge.net
I see that the string is taken by value in your small examples. Shouldn't it be taken by const-reference instead? Same for async_o etc.
I'd really like (need) suggestions and corrections from more experts on this small library to make sure i am on the right track. Could a initial review be arranged for the Join library?
I have a few questions: - why are you using boost.function? Aren't regular function objects enough? - how is concurrency handled? Locks? What kind? Is the scheduling fair?