Форум программистов, компьютерный форум, киберфорум
Java
Войти
Регистрация
Восстановить пароль
Блоги Сообщество Поиск Заказать работу  
 
 
Рейтинг 4.65/181: Рейтинг темы: голосов - 181, средняя оценка - 4.65
44 / 44 / 11
Регистрация: 21.01.2013
Сообщений: 668

Что такое асинхронный вызов и как его осуществить в java ?

11.08.2014, 15:43. Показов 34108. Ответов 21
Метки нет (Все метки)

Студворк — интернет-сервис помощи студентам
Понял, что не совсем понимаю, что такое асинхронный вызов.

Одно время мне казалось, что асинхронный вызов это например тогда, когда мы пишем new Thread(...).start()

То есть это как бы многопоточный вызов.

Но что-то читая разную информацию по косвенным признакам начинаю понимать, что я не прав.

Есть ли какая-то связь значения асинхронный в IT с бытовым значением этого слова(синхронное плавание например)

Проясните пожалуйста ситуацию.
0
Лучшие ответы (1)
Programming
Эксперт
39485 / 9562 / 3019
Регистрация: 12.04.2006
Сообщений: 41,671
Блог
11.08.2014, 15:43
Ответы с готовыми решениями:

Асинхронный вызов делегата и его принудительная остановка
Здравствуйте, с помощью данной конструкции вызываю асинхронный метод в программе: public partial class winEditor : Window { ...

Что такое указатель на фаил в делфи, как его получить и с чем его готовить
У меня вопрос я получаю имя файла вот тут procedure TForm1.Button5Click(Sender: TObject); var f_name:string; begin ...

Что такое отображение и как его найти
Помогите понять что такое отображение функции и как это отображение найти. Есть задание найти отображение функции...

21
Эксперт Java
 Аватар для KEKCoGEN
2399 / 2224 / 565
Регистрация: 28.12.2010
Сообщений: 8,672
11.08.2014, 16:24
Асинхронный метод это такой метод который не задерживает выполнение программы пока от ждет результатов. Например вы пишете клиент и отправляете на сервер запрос на получения информации. Серверу нужно время чтобы эту информацию собрать и отослать вам обратно. Если вызов метода будет синхронным, клиент отправит запрос на сервер и будет ждать ответа. При этом программа несможет выполнятся дальше (что может проявится например в том что у вас "застрянет" UI).
Если же вызов будет асинхронным, то клиент просто пошлет запрос на сервер и не будет ждать ответа. В этом случае, сервер должен знать куда отправлять ответ поэтому ему нужен некий callback метод. Когда сервер соберет всю информацию, он вызовет колбек метод у клиента и передаст ему результат.

Так или иначе при асинхронных вызовах всегда используются треды, так что ваша информация правильная.
1
44 / 44 / 11
Регистрация: 21.01.2013
Сообщений: 668
11.08.2014, 16:38  [ТС]
KEKCoGEN,
в javascript нет тредов, но есть асинхронные вызовы. Как вы это прокомментируте?
0
 Аватар для chizz
993 / 521 / 102
Регистрация: 19.03.2013
Сообщений: 3,114
Записей в блоге: 19
11.08.2014, 16:43
Thread и Sync-Async это совершенно разные оперы.
0
44 / 44 / 11
Регистрация: 21.01.2013
Сообщений: 668
11.08.2014, 17:25  [ТС]
chizz, Можете как-то поподробнее объяснить свою позтцию?

Добавлено через 19 минут
а то непонятно, что вы имеете ввиду.
0
Эксперт Java
 Аватар для turbanoff
4094 / 3828 / 745
Регистрация: 18.05.2010
Сообщений: 9,331
Записей в блоге: 12
11.08.2014, 17:36
Лучший ответ Сообщение было отмечено gredwhite как решение

Решение

gredwhite, То что нет тредов, которые доступны из кода, не значит, что нет тредов в среде выполнения.
Сам термин "асинхронно" - означает без ожидания результата. Где и как именно результат будет ожидаться, это детали реализации.
1
 Аватар для chizz
993 / 521 / 102
Регистрация: 19.03.2013
Сообщений: 3,114
Записей в блоге: 19
11.08.2014, 17:50
Что такое асинхронный вызов и как его осуществить в java ?

Асинхронный вызов чего вас интересует?

Разберем асинхронный - синхронный вызов на примере вызова проституток.

Асинхронный - это когда ты звонишь по телефону, говоришь ей - приезжай, кладешь трубку и спокойно ждешь, когда она приедет.
Синхронный - это когда ты звонишь ей по телефону, говоришь ей - приезжай и висишь на трубке, ждешь пока она приедет. Причем она тоже не должна класть трубку, иначе connection refused. Если у нее или у тебя при этом кончились деньги, то все - дисконнект по time out.

Добавлено через 2 минуты
Цитата Сообщение от KEKCoGEN Посмотреть сообщение
сли же вызов будет асинхронным, то клиент просто пошлет запрос на сервер и не будет ждать ответа. В этом случае, сервер должен знать куда отправлять ответ поэтому ему нужен некий callback метод.
Да, ей нужно в этом случае сказать точный адрес, куда ехать, иначе любви не будет.
1
2884 / 2296 / 769
Регистрация: 12.05.2014
Сообщений: 7,978
11.08.2014, 17:54
я бы попросил указать в каком контексте ТС видел это словосочетание, иначе тема рискует превратиться в жесткий оффтоп
0
44 / 44 / 11
Регистрация: 21.01.2013
Сообщений: 668
11.08.2014, 18:10  [ТС]
chizz, ну то есть многопоточность всего-лишь один из способов реализации асинхронности?

Если приложение не клиент-серверное, а .... обычное самое....есть ли способ добиться асинхронности без многопоточности?(я что-то не вижу как)
0
 Аватар для chizz
993 / 521 / 102
Регистрация: 19.03.2013
Сообщений: 3,114
Записей в блоге: 19
11.08.2014, 18:13
gredwhite, я же вам говорю, что вы путаете теплое с мягким. Либо мы вас не понимаем.

Асинхронные операции выполняются в отдельном потоке, синхронные - в том же, в котором вызван метод.

Вот хороший тред на эту тему: Что такое синхронное и асинхронное выполнение операций

Правда там C#, но не суть. Теория одна и та же.
И кстати там пример тоже хороший
0
44 / 44 / 11
Регистрация: 21.01.2013
Сообщений: 668
11.08.2014, 18:31  [ТС]
chizz, nio2 работает в одном потоке и асинхронно. я не прав?

Добавлено через 2 минуты
Асинхронные операции выполняются в отдельном потоке, синхронные - в том же, в котором вызван метод.
Thread и Sync-Async это совершенно разные оперы.
как-то противоречиво, не находите?

Добавлено через 42 секунды
Цитата Сообщение от turbanoff Посмотреть сообщение
То что нет тредов, которые доступны из кода, не значит, что нет тредов в среде выполнения.
Сам термин "асинхронно" - означает без ожидания результата. Где и как именно результат будет ожидаться, это детали реализации.
что вы подразумеваете под средой выполнения?
0
 Аватар для chizz
993 / 521 / 102
Регистрация: 19.03.2013
Сообщений: 3,114
Записей в блоге: 19
11.08.2014, 18:34
gredwhite, про nio ничего не знаю, поэтому не скажу.

Цитата Сообщение от gredwhite Посмотреть сообщение
как-то противоречиво, не находите?
Синхронное и асинхронное может быть всякое. Взаимодействие, интерфейсы, потоки, etc. Все зависит от того, что вы конкретно готовите. Так что противоречия только в понимании того, о чем мы разговариваем. Вы об одном, мы о другом.
0
44 / 44 / 11
Регистрация: 21.01.2013
Сообщений: 668
11.08.2014, 18:41  [ТС]
chizz, Если резюмировать то, что сказали Вы и Turbanoff, то всё таки в любом случае где-то под капотом треды есть хоть нам они могут быть и не видны.


для меня та фраза до сих пор противоречива. Либо я что-то не понимаю либо вы занимаетесь буквоедством)

ну и про нио вопрос открыт - может кто знает?
0
Эксперт Java
 Аватар для KEKCoGEN
2399 / 2224 / 565
Регистрация: 28.12.2010
Сообщений: 8,672
11.08.2014, 19:39
Цитата Сообщение от gredwhite Посмотреть сообщение
в javascript нет тредов, но есть асинхронные вызовы. Как вы это прокомментируте?
Цитата Сообщение от turbanoff Посмотреть сообщение
То что нет тредов, которые доступны из кода, не значит, что нет тредов в среде выполнения.
+1.
0
Эксперт Java
 Аватар для turbanoff
4094 / 3828 / 745
Регистрация: 18.05.2010
Сообщений: 9,331
Записей в блоге: 12
11.08.2014, 20:29
gredwhite, Браузер. Браузер спавнит треды так как считает нужным
0
44 / 44 / 11
Регистрация: 21.01.2013
Сообщений: 668
11.08.2014, 21:58  [ТС]
turbanoff, спавнит?
0
Эксперт Java
 Аватар для turbanoff
4094 / 3828 / 745
Регистрация: 18.05.2010
Сообщений: 9,331
Записей в блоге: 12
12.08.2014, 01:42
gredwhite, spawn, порождает.
0
44 / 44 / 11
Регистрация: 21.01.2013
Сообщений: 668
14.08.2014, 23:59  [ТС]
Цитата Сообщение от turbanoff Посмотреть сообщение
Сам термин "асинхронно" - означает без ожидания результата. Где и как именно результат будет ожидаться, это детали реализации.
а вы не путаете тут асинхронно и неблокируемо?
0
Эксперт Java
 Аватар для turbanoff
4094 / 3828 / 745
Регистрация: 18.05.2010
Сообщений: 9,331
Записей в блоге: 12
15.08.2014, 01:17
gredwhite, Вот тут довольно понятно рассказывают о разнице в терминах.
http://stackoverflow.com/quest... architectu
0
44 / 44 / 11
Регистрация: 21.01.2013
Сообщений: 668
15.08.2014, 01:32  [ТС]
turbanoff, собственно уже читал))) но много ещё чего читал, поэтому слегка каша в голове


synchronous and blocking
synchronous and non-blocking
asynchronous and blocking
asynchronous and non-blocking

можете жизненные примеры на эти случаи привести?

Добавлено через 5 минут
пока я так вижу:

блокируемость/неблокируемость это ответ не сразу/сразу

синхронность/асинхронность -возможность(в случае синхронности невозможность) делать что-то(выполнять какой-то код) с момента отправки запроса и до его получения.

Добавлено через 1 минуту
Цитата Сообщение от gredwhite Посмотреть сообщение
asynchronous and blocking
этот режим вообще загадка
0
Надоела реклама? Зарегистрируйтесь и она исчезнет полностью.
inter-admin
Эксперт
29715 / 6470 / 2152
Регистрация: 06.03.2009
Сообщений: 28,500
Блог
15.08.2014, 01:32
Помогаю со студенческими работами здесь

Что это такое и как его читать?
Привет всем. Ребята подскажите пожалуйста, почему образуются вот такие тексты при открытии файла tec. и как его читать? ѓс®ўЙ Д `...

Что такое блог и как его создать?
Добрый вечер любители и профессионалы. Что такое блог в принципе понятно. Меня больше интересует 1) как его создать? Слышал о движке...

Что такое svchost и как его удалить?
Ребят, что за фигня? Как удалить?

Что такое скольжение и как его считать ?
Вопрос задан в пунктах 3 ,4 , 5 Предистория: питаемся от источника напряжения начальные условия нулевые режим пусковой ,...

Что такое Implements и как его юзать?
Собственно вопрос уже задан: Что такое Implements и зачем он вообще нужен?


Искать еще темы с ответами

Или воспользуйтесь поиском по форуму:
20
Ответ Создать тему
Новые блоги и статьи
Философия технологии
iceja 01.02.2026
На мой взгляд у человека в технических проектах остается роль генерального директора. Все остальное нейронки делают уже лучше человека. Они не могут нести предпринимательские риски, не могут. . .
SDL3 для Web (WebAssembly): Вывод текста со шрифтом TTF с помощью SDL3_ttf
8Observer8 01.02.2026
Содержание блога В этой пошаговой инструкции создадим с нуля веб-приложение, которое выводит текст в окне браузера. Запустим на Android на локальном сервере. Загрузим Release на бесплатный. . .
SDL3 для Web (WebAssembly): Сборка C/C++ проекта из консоли
8Observer8 30.01.2026
Содержание блога Если вы откроете примеры для начинающих на официальном репозитории SDL3 в папке: examples, то вы увидите, что все примеры используют следующие четыре обязательные функции, а. . .
SDL3 для Web (WebAssembly): Установка Emscripten SDK (emsdk) и CMake для сборки C и C++ приложений в Wasm
8Observer8 30.01.2026
Содержание блога Для того чтобы скачать Emscripten SDK (emsdk) необходимо сначало скачать и уставить Git: Install for Windows. Следуйте стандартной процедуре установки Git через установщик. . . .
SDL3 для Android: Подключение Box2D v3, физика и отрисовка коллайдеров
8Observer8 29.01.2026
Содержание блога Box2D - это библиотека для 2D физики для анимаций и игр. С её помощью можно определять были ли коллизии между конкретными объектами. Версия v3 была полностью переписана на Си, в. . .
Инструменты COM: Сохранение данный из VARIANT в файл и загрузка из файла в VARIANT
bedvit 28.01.2026
Сохранение базовых типов COM и массивов (одномерных или двухмерных) любой вложенности (деревья) в файл, с возможностью выбора алгоритмов сжатия и шифрования. Часть библиотеки BedvitCOM Использованы. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL_LoadPNG (без SDL3_image)
8Observer8 28.01.2026
Содержание блога SDL3 имеет собственные средства для загрузки и отображения PNG-файлов с альфа-каналом и базовой работы с ними. В этой инструкции используется функция SDL_LoadPNG(), которая. . .
SDL3 для Android: Загрузка PNG с альфа-каналом с помощью SDL3_image
8Observer8 27.01.2026
Содержание блога SDL3_image - это библиотека для загрузки и работы с изображениями. Эта пошаговая инструкция покажет, как загрузить и вывести на экран смартфона картинку с альфа-каналом, то есть с. . .
КиберФорум - форум программистов, компьютерный форум, программирование
Powered by vBulletin
Copyright ©2000 - 2026, CyberForum.ru