
AMDG Rene Rivera <grafikrobot <at> gmail.com> writes:
Steven Watanabe wrote:
Rene Rivera <grafikrobot <at> gmail.com> writes:
Steven Watanabe wrote:
Unfortunatly, it is necessary to retain the lock until you are done with f. Define "done with f".
Reach a point where you will not call it again. (I'm refering the the value returned by make_c_function not the variable f)
How do you determine that you won't call it again? What do you want to happen at that time? What do you want to happen after that time? Sorry if I keep asking, but it's hard to answer questions with essentially no information as to what you want to do.
struct tag {}; void f(int (&array)[100][3], unsigned key_index) { assert(key_index < 3); std::qsort(array,100,sizeof(int[3]), make_c_function<tag,void(const void*,const void*)>( ll::static_cast_<const int*>(_1)[key_index] < ll::static_cast_<const int*>(_1)[key_index])); } In Christ, Steven Watanabe