You are on page 1of 11

FACULDADE ANHANGUERA DE LIMEIRA

KAIQUE SANTOS ARAJO, RA: 6247211778


FABIO BALDESSIN, RA: 6658419203

ATPS PROGRAMAO CONCORRENTE


WALTER GIMA

LIMEIRA SP
2016

Introduo
Esse trabalho traz alguns conceitos sobre a Programao concorrente,

Descrevendo de uma maneira objetiva todo contedo relacionado ATPS etapa 1.

Sumrio

1 Realizao da leitura citados na ATPS.


2 Realizao dos experimentos do passo 3.
3 Concluso.

Experimento iniciando 1 threads

public class Canal extends Thread { private


String mensagem;
private int atraso;
public Canal(String mensagem, int atraso) { this.mensagem =
mensagem;
this.atraso = atraso;
}
public void run() {
for (int i = 0; i < 10; i++)
{ try {
}
catch(Exception e) {
}
System.out.println(mensagem + ", contando: " + i);
}
}
}

public class MultiplosCanais {


public static void main(String[] args) { Canal
c1 = new Canal("Canal 1", 1000); c1.start();
try {
}
catch (Exception e) {
}
System.out.println("Fim.");
}
}

Experimento iniciando 10 threads


public class Canal extends Thread { private String mensagem;
private int atraso;
public Canal(String mensagem, int atraso) { this.mensagem = mensagem;
this.atraso = atraso;
}
public void run() {
for (int i = 0; i < 10; i++)
{ try {
}
catch(Exception e) {
}
System.out.println(mensagem + ", contando: " + i);
}
}
}
public class MultiplosCanais {
public static void main(String[] args) {
for (cont = 0;cont <10;cont++) {
Canal c[cont] = new Canal("Canal [cont]", 1000); C[cont].start();
}
try {
}
catch (Exception e) {
}
System.out.println("Fim.");
}
}

Experimento iniciando 50 threads


public class Canal extends Thread { private String mensagem;
private int atraso;
public Canal(String mensagem, int atraso) { this.mensagem = mensagem;
this.atraso = atraso;
}
public void run() {
for (int i = 0; i < 10; i++)
{ try {
}
catch(Exception e) {
}
System.out.println(mensagem + ", contando: " + i);
}
}
}
public class MultiplosCanais {
public static void main(String[] args) {
for (cont = 0;cont <50;cont++) {
Canal c[cont] = new Canal("Canal [cont]", 1000); C[cont].start();
}
try {
}
catch (Exception e) {
}
System.out.println("Fim.");
}
}

Experimento iniciando 100 threads


public class Canal extends Thread { private String mensagem;
private int atraso;
public Canal(String mensagem, int atraso) { this.mensagem = mensagem;
this.atraso = atraso;
}
public void run() {
for (int i = 0; i < 10; i++)
{ try {
}
catch(Exception e) {
}
System.out.println(mensagem + ", contando: " + i);
}
}
}
public class MultiplosCanais {
public static void main(String[] args) {
for (cont = 0;cont <100;cont++) {
Canal c[cont] = new Canal("Canal [cont]", 1000); C[cont].start();
}
try {
}
catch (Exception e) {
}
System.out.println("Fim.");
}
}

Experimento iniciando 500 threads


public class Canal extends Thread { private String mensagem;
private int atraso;
public Canal(String mensagem, int atraso) { this.mensagem = mensagem;
this.atraso = atraso;
}
public void run() {
for (int i = 0; i < 10; i++)
{ try {
}
catch(Exception e) {
}
System.out.println(mensagem + ", contando: " + i);
}
}
}
public class MultiplosCanais {
public static void main(String[] args) {
for (cont = 0;cont <500;cont++) {
Canal c[cont] = new Canal("Canal [cont]", 1000); C[cont].start();
}
try {
}
catch (Exception e) {
}
System.out.println("Fim.");
}
}

Experimento iniciando 1000 threads


public class Canal extends Thread { private String mensagem;
private int atraso;
public Canal(String mensagem, int atraso) { this.mensagem = mensagem;
this.atraso = atraso;
}
public void run() {
for (int i = 0; i < 10; i++)
{ try {
}
catch(Exception e) {
}
System.out.println(mensagem + ", contando: " + i);
}
}
}
public class MultiplosCanais {
public static void main(String[] args) {
for (cont = 0;cont <1000;cont++) {
Canal c[cont] = new Canal("Canal [cont]", 1000); C[cont].start();
}
try {
}
catch (Exception e) {
}
System.out.println("Fim.");
}
}

Esse teste verificou que o consumo de pedidos proporcional a quantidade de agentes


que foram utilizados para os processamentos. A contagem de agentes exibidos a
quantidade de consumidor e produtor.
A utilizao de um agente, o tamanho de pedidos gasto foi exatamente 18 pedidos, essa
mdia de pedidos por segundo sendo um.
Sendo observado que ao ajuntar de um para cinquenta agentes, o dispndio de pedido
soma rudemente, de 18 pedidos para uma mdia de 843,4 demandas.
Imediatamente aps esse dado, factvel perceber que adir o nmero de agentes,
aumenta a quantidade de pedidos processados por segundos.

Ao indagar a Tabela, possvel aperceber que a mdia de consumo de dispndio de


pedidos est em mister da quantidade de agentes que esto em realizao. Ao
voltear 50 agentes, h uma mdia de 851 pedidos definhados e uma mdia de 4,72
pedidos consumidos por segundo. Ao voltear 100 agentes, tem uma mdia de 1701
pedidos definhados e uma mdia de 9,45 pedidos definhados por segundo. Agora
ao voltear 500 agentes, uma mdia de 8501 pedidos definhados e uma mdia de
47,22 pedidos definhados por segundo. Ao voltear 1000 agentes, uma mdia de
16560,3 pedidos consumidos uma mdia de 91,998 pedidos definhados por
segundo.

Concluso
Hoje h uma competio nas empresas para que os produtos e servios sejam
entregues aos clientes no menor tempo e um menor custo possvel.
Foi realizado um prottipo de um software para uma futura implementao, para
que a rapidez e a capacidade do atendimento sejam mais eficazes.

You might also like