<prompt> Unda programu ya C yenye nyuzi nyingi ambayo hukokotoa bidhaa ya vitone vya vekta mbili kubwa kwa wakati mmoja, ikigawanya kazi kati ya nyuzi nyingi.PLINFORMAT  <response>: pamoja na pamoja na pamoja na pamoja na Kazi ya kukokotoa bidhaa ya sehemu ya nukta kwa anuwai ya vipengee katika vekta mbilivoid partial_dot_productconst std::vector v1, const std::vector v2, int start, int end, int result, std::mutex mtx jumla ya int 0; kwa int i anza; i lockmtx; matokeo jumla;int main const int vector_size 1000000; const int num_threads 4; Anzisha vekta mbili kubwa zilizo na maadili ya nasibu std::vector v1vector_size, v2vector_size; kwa int i 0; i vector_size; i v1i rand 10; v2i rand 10; Kokotoa bidhaa ya nukta kwa kutumia nyuzi nyingi matokeo ya int 0; std::mutex mtx; std::vector nyuzi; int chunk_size vector_size num_threads; kwa int i 0; i 