Главная /
Построение распределенных систем на Java /
Чтение из потока, в строке 21, в случае, если клиент после установки соединения не записал в поток никаких данных, приведет: 1 package com.asw.net.ex1; 2 import java.io.*; 3 4 public class BillingClientService extends Thread { 5 DataInputStream dis; 6 Dat
Чтение из потока, в строке 21, в случае, если клиент после установки соединения не записал в поток никаких данных, приведет:
1 package com.asw.net.ex1;
2 import java.io.*;
3
4 public class BillingClientService extends Thread {
5 DataInputStream dis;
6 DataOutputStream dos;
7 BillingService bs;
8
9 public BillingClientService (BillingService bs,DataInputStream dis,DataOutputStream dos){
10 this.bs = bs;
11 this.dis = dis;
12 this.dos = dos;
13 }
14
15 public void run(){
16 System.out.println("ClientService thread started");
17 boolean work = true;
18 while (work) {
19 int command;
20 try {
21 command = dis.readInt();
22 switch (command) {
23 case BillingService.ADD_NEW_CARD:
24 addNewCard();
25 break;
26 case BillingService.ADD_MONEY:
27 addMoney();
28 break;
29 case BillingService.SUB_MONEY:
30 subMoney();
31 break;
32 case BillingService.GET_CARD_BALANCE:
33 getCardBalance();
34 break;
35 case BillingService.EXIT_CLIENT:
36 work = false;
37 break;
38 default:
39 System.out.println("Bad operation:" + command);
40 }
41 } catch (IOException e) {
42 e.printStackTrace();
43 }
44 }
45 }
46
47 void addNewCard() throws IOException{
48 String personName = dis.readUTF();
49 String card = dis.readUTF();
50 bs.addNewCard(personName,card);
51 }
52 void addMoney() throws IOException{
53 String card = dis.readUTF();
54 double money = dis.readDouble();
55 bs.addMoney(card,money);
56 }
57 void subMoney() throws IOException{
58 String card = dis.readUTF();
59 double money = dis.readDouble();
60 bs.subMoney(card,money);
61 }
62 void getCardBalance() throws IOException{
63 String card = dis.readUTF();
64 double money = bs.getCardBalance(card);
65 dos.writeDouble(money);
66 }
67 }
вопрос
Правильный ответ:
к ошибке, на момент вызова метода
readInt
(строка 21) данные должны быть уже переданы со стороны клиента
метод будет заблокирован до момента поступления данных со стороны клиента или обрыва соединения
метод возвратит 0
Сложность вопроса
66
Сложность курса: Построение распределенных систем на Java
91
Оценить вопрос
Комментарии:
Аноним
Если бы не данные решения - я бы не справился c этими тестами интуит.
27 дек 2019
Аноним
Если бы не данные подсказки - я бы не справился c этими тестами интуит.
23 авг 2018
Другие ответы на вопросы из темы интернет-технологии интуит.
- # Поля транспортных классов, которые предполагается передавать между компонентами, в обязательном порядке:
- # Какие из перечисленных примеров не являются примерами распределенных систем:
- # Протокол обмена данными между клиентом и сервером, предложенный в первой части лекции обладает следующими недостатками:
- # IDL это:
- # Какие из следующих утверждений являются верными: