In reply to your second post new_to_uvm:
There is no need to use a fork statement unless you have a time consuming process to fork. Your posted code would simply be
task class_c::start_something ();
forever @some_event foreach(pi[i]) start_operation [i] = 1;
endtask