Ir para conteúdo
Fórum Script Brasil
  • 0

Arredondamento Utilizando A Funcao Clock


Guest Cássio Neto

Pergunta

Guest Cássio Neto

Olá pessoal estou com o seguinte problema.

Quero medir a latencia de uma rede atraves do envio e recebimento de mensagens utilizando sockets....

Tá tudo pronto....pego o valor do clock do processador antes de enviar a mens. pela rede e pego de novo depois....

Subtraio os valores e transformo em segundos o problema que ele pega os valores até a 3 casas decimais e preciso que seja maior ou evitar que arredonde.

Como devo fazer...segue abaixo o que estou fazendo:

tempoenvio=clock();

rc = sendto(s,(char *)&desc, sizeof(desc),0,(SOCKADDR*)&destAddr, destAddrLen);

rc = recvfrom(s,(char *)&tab, sizeof(tab),0,(SOCKADDR*)&destAddr, &destAddrLen);

tempochegada=clock();

fprintf(arq,"Tempo Envio; %lf ; Tempo Chegada; %lf ; Latencia; %lf \n"

,((double)tempoenvio/CLOCKS_PER_SEC),((double)tempochegada/CLOCKS_PER_SEC),((double)(tempochegada - tempoenvio)/CLOCKS_PER_SEC));

Valeu galera....abraços

Link para o comentário
Compartilhar em outros sites

4 respostass a esta questão

Posts Recomendados

  • 0
Guest Cassio Neto
Olá pessoal estou com o seguinte problema.

Quero medir a latencia de uma rede atraves do envio e recebimento de mensagens utilizando sockets....

Tá tudo pronto....pego o valor do clock do processador antes de enviar a mens. pela rede e pego de novo depois....

Subtraio os valores e transformo em segundos o problema que ele pega os valores até a 3 casas decimais e preciso que seja maior ou evitar que arredonde.

Como devo fazer...segue abaixo o que estou fazendo:

tempoenvio=clock();

rc = sendto(s,(char *)&desc, sizeof(desc),0,(SOCKADDR*)&destAddr, destAddrLen);

rc = recvfrom(s,(char *)&tab, sizeof(tab),0,(SOCKADDR*)&destAddr, &destAddrLen);

tempochegada=clock();

fprintf(arq,"Tempo Envio; %lf ; Tempo Chegada; %lf ; Latencia; %lf \n"

,((double)tempoenvio/CLOCKS_PER_SEC),((double)tempochegada/CLOCKS_PER_SEC),((double)(tempochegada - tempoenvio)/CLOCKS_PER_SEC));

Valeu galera....abraços

O tempo conseguido forma:

Tempo Envio; 17.425000 ; Tempo Chegada; 17.425000 ; Latencia; 0.000000 ; Tempo Envio; 17.435000 ; Tempo Chegada; 17.435000 ; Latencia; 0.000000 ; Tempo Envio; 17.445000 ; Tempo Chegada; 17.445000 ; Latencia; 0.000000 ; Tempo Envio; 17.455000 ; Tempo Chegada; 17.455000 ; Latencia; 0.000000 ; Tempo Envio; 17.465000 ; Tempo Chegada; 17.465000 ; Latencia; 0.000000 ; Tempo Envio; 17.475000 ; Tempo Chegada; 17.475000 ; Latencia; 0.000000 ; Tempo Envio; 17.475000 ; Tempo Chegada; 17.475000 ; Latencia; 0.000000 ; Tempo Envio; 17.485000 ; Tempo Chegada; 17.485000 ; Latencia; 0.000000 ; Tempo Envio; 17.495000 ; Tempo Chegada; 17.495000 ; Latencia; 0.000000 ; Tempo Envio; 17.505000 ; Tempo Chegada; 17.505000 ; Latencia; 0.000000 ;

Como voce pode ver não estou conseguindo medir a latencia da rede. pois a velocidade está inferior a milésimos de segundo. E os valores estão sendo arredondados na casa dos milésimos, tem alguma forma de evitar esse arredondamento. Acho que já resolveria.

Valeu Graymalkin...

Cássio

Link para o comentário
Compartilhar em outros sites

Participe da discussão

Você pode postar agora e se registrar depois. Se você já tem uma conta, acesse agora para postar com sua conta.

Visitante
Responder esta pergunta...

×   Você colou conteúdo com formatação.   Remover formatação

  Apenas 75 emoticons são permitidos.

×   Seu link foi incorporado automaticamente.   Exibir como um link em vez disso

×   Seu conteúdo anterior foi restaurado.   Limpar Editor

×   Você não pode colar imagens diretamente. Carregar ou inserir imagens do URL.



  • Estatísticas dos Fóruns

    • Tópicos
      152,1k
    • Posts
      651,8k
×
×
  • Criar Novo...