Threaduri

Laborator
8/10 (1 vot)
Conține 1 fișier: cpp
Pagini : 1 în total
Mărime: 1.26KB (arhivat)
Publicat de: Sofica Stroe
Puncte necesare: 0
Profesor îndrumător / Prezentat Profesorului: Boian Mircea
sisteme de operare distribuite

Extras din laborator

#include <iostream>

#include <Windows.h>

#include <time.h>

#include <random>

using namespace std;

#define DIMLABIRINT 9 //Dimensiunea labirintului

#define POZSTART DIMLABIRINT / 2

//Matricea care reprezinta labirintul

short labirint[DIMLABIRINT][DIMLABIRINT] = {{1, 0, 1, 1, 1, 0, 1, 0, 0},

{1, 1, 0, 0, 1, 0, 0, 1, 1},

{1, 0, 1, 0, 1, 1, 0, 1, 0},

{1, 0, 1, 1, 1, 0, 0, 0, 1},

{0, 0, 1, 1, 0, 0, 1, 1, 1},

{1, 1, 0, 0, 1, 0, 0, 1, 0},

{0, 0, 1, 0, 0, 1, 0, 0, 1},

{1, 0, 0, 1, 0, 1, 1, 1, 1},

{1, 1, 1, 0, 1, 1, 1, 1, 0}};

//Primul thread

HANDLE thread;

//Mutex-ul pentru controlarea accesului la matrice si la afisare

HANDLE mutex;

typedef struct

{

short i, j;

} Coordonate;

void generareLabirint()

{

//Setam seed-ul pentru functia de generare de nr. aleatoare

srand(time(NULL));

for (short i = 0; i < DIMLABIRINT; i++)

{

short linie[DIMLABIRINT];

for (short j = 0; j < DIMLABIRINT; j++)

{

short val = rand() % 2; //0 sau 1

labirint[i][j] = val;

}

}

labirint[POZSTART][POZSTART] = 0; //Ne asiguram ca primul thread se poate pozitiona in centru

}

void afisareLabirint()

{

for (short i = 0; i < DIMLABIRINT; i++)

{

for (short j = 0; j < DIMLABIRINT; j++)

{

cout << labirint[i][j] << " ";

}

cout << "nn";

}

cout << "------------------------------------------------------n";

}

Conținut arhivă zip

Alții au mai descărcat și

Analiza sistemului informațional al unei unități economice

Prezentare generala S.C.D.L Livada s-a înfiinţat în anul 1957 la data de 1 aprilie, ca Staţiune Experimentală Legumicolă a Institutului de...

Sisteme de consultanță

Sisteme de ConsultanŃă Un sistem de consultanŃă are rolul de a pune la dispozitia utilizatorului informatii referitoare la o entitate (obiect,...

Linux

Lucrarea 6 Configurarea unui server linux 1. Introducere teoretica Un server Linux poate oferi toate serviciile pe care le poate oferi un server...

Site Web - Fireworks

Macromedia Studio 8 este principalul pachet de dezvoltare al aplicaţiilor web. De la proiectarea elementelor grafice la dezvoltarea aplicaţiilor...

Site Web - Fireworks-Library

Librăria Fireworks ne permite stocarea, partajarea şi reutilizarea obiectelor folosite în procesul de dezvoltare. Librăria dă posibilitatea...

Site web - Dreamweaver - pregătirea noului sit

Macromedia Dreamweaver 8 este un editor HTML care ne permite crearea paginilor şi lucrul cu imagini sau elemente multimedia într-un mediu vizual...

Directoare și Fișiere

Sarcini: 1. Definiţi următoarea structură: NumePrenume F1(date) Rezultate Dir1 F2(date) F3 F1(copy) Dir2 F4 F5 2. Creaţi f3 în...

Analiza Proprietăților și Drepturilor de Acces la Fișiere

Scopul lucrării: Scopul acestei lucrări este înţelegerea modului în care sistemul de operare Linux setează şi foloseşte drepturile utilizatorilor...

Te-ar putea interesa și

Framework Pentru Administrarea Rețelelor de Calculatoare

Rezumat Prin această lucrare ne propunem realizarea unei aplicaţii software care să ajute un utilizator sau administrator de reţea Linux să...

JAVA - Battleship

CAPITOLUL 1 INTRODUCERE 1.1. Notiuni introductive Jocuri Un joc este o activitate recreaţională în care sunt implicaţi unul sau mai mulţi...

Calcul paralel - metodă de gradient conjugat

Introducere Metodele de optimizare sunt în general metode de descreştere, ce determină minimul unei funcţii U de n variabile reale care se numeşte...

Procesor Intel Core I7 Extreme

Specificaţii tehnice: Cod producător BX80613I7980X Soclu 1366 Nucleu Gulftown Număr nuclee 6 Frecvenţa 3333 MHz Cache level 1 6x 32 KB...

Dispozitiv care Transmite Comenzi de la Distanță

Introducere Limbajul Java împreună cu mediul său de dezvoltare şi execuţie au fost proiectate pentru a rezolva o parte dintre problemele actuale...

Programare paralelă în sisteme distrbuite

Retelele de interconectare sunt de 2 tipuri: a)retele statice la care conexiunile intre noduri sunt fixe si punct la punct-transferul informatiei...

USO - Automatică

Dobandirea/aprofundarea unor notiuni teoretice (c) 2. Dobandirea/aprofundarea unor abilitati practice (l) 3. Familiarizarea cu noi concepte (c+l)...

Laborator Proiectarea și Managementul Sistemelor de Calcul

- istoric OOML, standardizare, UML 2.1 si Draft UML 3 (ce aduce nou vs 2.1) - ANSI SQL, Oracle vs Windows SQL, Descriere scurta MySQL, Postgress...

Ai nevoie de altceva?