91av视频/亚洲h视频/操亚洲美女/外国一级黄色毛片 - 国产三级三级三级三级

資源簡介

linux下多線程實現(xiàn)矩陣乘法,可以對操作系統(tǒng)的線程有更多理解

資源截圖

代碼片段和文件信息

/*author?:林海南
?*主要用M*N個計算線程進(jìn)行數(shù)值計算,用一個打印線程來打印結(jié)果實現(xiàn)多線程編程
?*打印線程作為主線程,使得在計算進(jìn)程結(jié)束之前,不能將結(jié)果進(jìn)行打印,當(dāng)然并行行并不是那么太好。
?*程序可以正常運行,不過由于線程等待條件過強,基本上還是一個線性的執(zhí)行過程
*/
#include
#include
#include

#define?NUMBER?1000
struct?Info
{
?????int?i;
?????int?j;
};
int?M=10;
int?N=10;
int?K=10;
int?A[NUMBER][NUMBER];??????????????//矩陣A
int?B[NUMBER][NUMBER];??????????????//矩陣B
int?C[NUMBER][NUMBER];??????????????//矩陣C
pthread_t?threads[NUMBER][NUMBER];???//線程

void?*multiply(void?*tid)??????????//計算C矩陣中i,j位置的數(shù)值
{
?????struct?Info?*temp?=malloc(sizeof(struct?Info));
?????temp?=(struct?Info?*)tid;
?????int?sum=0;
?????int?i;
?????for(i=0;i?????{
?????????sum?+=A[temp->i][i]*B[i][temp->j];?
?????}
?????C[temp->i][temp->j]=sum;????//結(jié)果放回C中
?????return?tid;
}
void?*print(void?*tid)??????????//打印結(jié)果函數(shù),作為主函數(shù)
{
?????int?ij;
?????for(i=0;i?????{
????????for(j=0;j????????{
???????????printf(“%d?“C[i][j])????;
????????}
????????printf(“\n“);
?????}
?????retur

評論

共有 條評論