Жүйе функциясын эмуляциялау әдісі эмуляцияға қарсы шараларды айналып өтуге шақырады. Функция шақыру оқиғасын эмуляциялау Ұялы телефондағы қоңырау эмуляциясы дегеніміз не

Мақсаттар

  • Жаңа микропроцессорды/микроконтроллерді құру. Бұл жағдайда осы процессордың командалары эмулятордың (бағдарлама немесе құрылғы) көмегімен орындалады.
  • Басқа құрылғы немесе операциялық жүйе үшін жазылған бағдарламалық құралды іске қосу қажеттілігі.
  • Түрлі жүйелер үшін жазылған тестілеу бағдарламалары.

Аппараттық және бағдарламалық жасақтаманы эмуляциялау

Бағдарламалық-аппараттық кешен жағдайында эмулятор ерекше болып табылады электрондық құрылғы, тақтай түрінде жасалған.

Бағдарламалық құрал эмуляциясы

Эмуляция компьютерлік бағдарламаға бастапқы жазылған платформадан өзгеше немесе кейбір жағдайларда бірдей платформада (компьютер архитектурасы және/немесе операциялық жүйе) жұмыс істеуге мүмкіндік береді. Эмуляцияны осы орындау процесінің өзі деп те атайды. Бағдарламаның әрекетін ғана жаңғыртатын модельдеуден айырмашылығы, эмуляция бастапқы машиналық кодты орындау үшін имитацияланған жүйенің күйін дәл модельдеуге бағытталған.

Жоғары деңгейлі тілдерді пайдаланған кезде, кейде орындалатын бағдарламаның өнімділігін сақтау үшін эмуляцияның орнына олар бағдарламаларды жаңа ортаға тасымалдайды. Бұл жағдайда кодтың аппараттық құралға тәуелді бөлімдері қайта жазылады.

Эмуляцияның танымал қолданылуының бірі – жеке компьютерде ойын автоматтары немесе бейне ойын консольдері үшін жазылған ойындарды іске қосу.

Кейбір аппараттық платформаның толық эмуляциясы жеке сағат циклдерінің деңгейіне дейін, құжатталмаған мүмкіндіктер мен тіпті іске асыру қателеріне дейін өте дәлдікті талап етеді. Бұл әсіресе Commodore 64, ZX Spectrum сияқты классикалық үй машиналары үлгілері үшін өте маңызды. бағдарламалық қамтамасыз етубұл бағдарламашы шешімдеріне қатты тәуелді. Белгілі бір шешімді таңдау оңтайландыру мақсатында жүзеге асырылады (бағдарламаның орындалу жылдамдығы немесе өлшемі бойынша), мысалы, ойын бағдарламашылары, сондай-ақ демосцендік энтузиастар пайдаланады. Мұндай бағдарламалар көбінесе процессордың немесе операциялық жүйенің құжатталмаған мүмкіндіктеріне негізделеді.

Керісінше, кейбір басқа платформалар тікелей жабдыққа қол жеткізуді өте аз пайдаланды. Бұл жағдайда эмуляцияланған жүйенің жүйелік шақыруларының жұмыс істеп тұрған жүйенің қоңырауларына аударылуын қамтамасыз ету үшін үйлесімділіктің кейбір деңгейін қамтамасыз ету жеткілікті.

Әдетте эмулятор эмуляцияланған компьютердің әртүрлі ішкі жүйелеріне жауапты бірнеше модульдерден тұрады. Көбінесе эмулятор мыналардан тұрады:

  • орталық процессордың эмуляторы немесе симуляторы;
  • RAM және ROM эмуляциялайтын жад ішкі жүйесінің модулі;
  • әртүрлі енгізу/шығару құрылғыларын эмуляциялауға арналған модуль немесе модульдер.

Жүйелік шина әдетте қарапайымдылық немесе өнімділік себептері бойынша эмуляцияланбайды және виртуалды перифериялық құрылғы CPU модулі мен жад модуліне тікелей қатынасады.

Сондай-ақ қараңыз

Ескертпелер

Әдебиет

  • А.Аганичев, Д.Панфилов, М.Плавич, О.Полянский. MOTOROLA фирмасының MC68HC11 тобының микроконтроллерлері негізіндегі MP жүйелерін жөндеуге арналған бағдарламалық-аппараттық кешен
  • Шагурин И., Бродин В., Калинин Л., Толстов Ю., Петров С., Исенин И., Эйдельман С., Ванюлин В. Motorola MK негізіндегі басқару жүйелерін жобалау және жөндеуге арналған құралдар.

Сілтемелер


Викимедиа қоры.

2010.:
  • Синонимдер
  • Андрей

Геофизика

    Басқа сөздіктерде «Эмуляция» деген не екенін қараңыз:Эмуляция - бір жүйенің екінші жүйенің көмегімен жоғалтпай жұмыс істеуіне еліктеуфункционалдылық және нәтижелерді бұрмалау. Эмуляция бағдарламалық және/немесе аппараттық құрал арқылы орындалады. Сондай-ақ қараңыз: Бағдарламаны орындау қаржылық сөздігі Finam...

    Қаржылық сөздікэмуляция - бір құрылғының жұмысына басқа құрылғы немесе компьютердің құрылғылары арқылы еліктеу, онда модельдеуші құрылғы бірдей деректерді қабылдайды, сол бағдарламаны орындайды және ... ... сияқты бірдей нәтижеге жетеді.

    Техникалық аудармашыға арналған нұсқаулықЭМУЛЯЦИЯ - [Ағылшын] еліктеу жарыс, бақталастық] бақталастық, бәсекелестік, біреуден асып түсуге ұмтылу. Шетел сөздерінің сөздігі. Комлев Н.Г., 2006 ...

    Қаржылық сөздікОрыс тілінің шетел сөздерінің сөздігі - зат есім, синонимдер саны: 3 жарыс (8) еліктеу (25) бақталастық (21) ...

    Қаржылық сөздікСинонимдер сөздігі - және, f. эмуляция f. Эмуляцияны қараңыз...

    Қаржылық сөздікОрыс тілінің галлицизмдерінің тарихи сөздігі

    Басқа сөздіктерде «Эмуляция» деген не екенін қараңыз:- 53. Эмуляция эмуляциясы Бір құрылғының басқа құрылғысы немесе компьютердің құрылғылары арқылы жұмыс істеуін имитациялау, онда модельдеуші құрылғы бірдей деректерді қабылдайды, бір бағдарламаны орындайды және сол... ... Нормативтік-техникалық құжаттама терминдерінің сөздік-анықтамалығы

    Қаржылық сөздік- және. Бір нәрседе бір-бірінен асып түсуге ұмтылу; бәсекелестік. Ефремнің түсіндірме сөздігі. Т.Ф.Ефремова. 2000... Ефремованың орыс тілінің қазіргі түсіндірме сөздігі

    Қаржылық сөздік- эмуляция және... Орыс орфографиялық сөздігі

Шамамен алты ай бұрын маған мынадай сұрақ қойылды: «Мен пайдаланушы әрекетіне негізделген белгілі бір функцияны іске қосатын үлкен құрылымды қолданамын. Мен осы функцияның кодын өзгертпестен, осы функцияны шақырған жағдайда өз кодымды орындағым келеді. Тәжірибе ең жақсыдан алыс, функцияны шақыру оқиғасы жоқ, мен жай ғана саусағымды ғибадатханаға бұрып, бұл қорқынышты код екенін айттым, сіз мұны істемеуіңіз керек және бұл мүмкін емес.

Бір-екі күн бұрын, Одессаға тән емес салыстырмалы түрде жылы қыстың кешінде үйге бара жатқанда, менде әдеттегідей емес ой болды: «Егер мен Богданның алты ай бұрын айтқанын орындауға тырыссам ше?» Үйге келген соң компьютерді қостым да, бір-екі минуттың ішінде ойыма келгенді істедім. Ең алдымен, егер олар қайта анықталса, кірістірілген әдістер қалай әрекет ететіні және одан кейін олардың алдын ала анықтау алдындағы бұрынғы күйін қандай да бір жолмен шақыруға болатындығы мені қызықтырды. Егер нысан қайта анықталса, сол сыртқы түрін сақтай отырып, оған сілтемелер жойылмайтынын білдім. Кірістірілген функцияларға қатысты күмән болды. Бұл мүмкін екені белгілі болды.

Мүмкін, мен ешқашан мұндай құралды қолдануға тура келмейтін шығармын, бірақ таза гипотетикалық түрде, біреудің белгілі бір функцияға қоңырауды қадағалау, әрбір қоңырау туралы есеп алу міндеті болуы мүмкін, ол мыналардан тұрады:

  1. Орындау нәтижесі
  2. Аргументтер өтті
  3. Қоңырау контексі (қоңырау шалғанда бұл не)
  4. Өңдеуші жасалғаннан кейін функция шақыруларының саны
(Бұл тізім өңдеушіге берілген аргументтерге толығымен сәйкес келеді)

addCallListener = функция(функ, кері шақыру)( var callNumber = 0; қайтару функциясы())( var args = .slice.call(аргументтер); var нәтиже; көріңіз ( нәтиже = func.apply(бұл, аргументтер); callNumber++; ) catch (e) ( кері шақыру(e, args, this, callNumber); throw e; ) кері қоңырау (нәтиже, args, this, callNumber) )

Өте қарапайым және қысқа, солай ма?

Содан кейін біз кейбір функцияны келесідей қайта анықтаймыз:

SomeFunct = addCallListener(someFunct, функция(нәтиже, аргтар, self, callNumber)( //Бірдеңе жасаңыз )); // немесе Constructor.prototype.method = addCallListener(Constructor.prototype.method, функция(нәтиже, аргтар, self, callNumber)( //Бірдеңе жасаңыз ));

Әлбетте, ол кодтың орын алатын бөлігінде «көрінетін» болуы керек.

Кейбір мысалдар
Мысалдарды іске қосу үшін сізде ашық консоль болуы керек (Chrome жүйесінде оны Ctrl+Shift+i деп атаңыз).

Сын мен толықтырулар үшін javascript.ru форумындағы жолдастарға рахмет.

UPD
Мен функцияны сәл кеңейттім: енді бір кері шақырудың орнына екінші аргумент ретінде нысан жіберіледі

  1. алдында (функция іске қосылмай тұрып шақырылады)
  2. сәттілік (функция сәтті аяқталса деп аталады)
  3. қате (қате орын алса)
  4. кейін (кез келген жағдайда, табысқа қарамастан шақырылады)
Әрбір өңдегішке нысан беріледі
  1. өзін-өзі (контекст)
  2. аты (функция атауы)
  3. күй («қате» немесе «сәтті»)
  4. сәттілік саны (сәтті қоңыраулар саны)
  5. errorNumber (қате бар қоңыраулар саны)
  6. нәтиже (бар болса, нәтиже)
  7. қате (қате, бар болса)
Оған қоса, addCallListener функциясы енді терезеге немесе процеске соғылып қалмас үшін Функция конструктор нысанының бөлігі болып табылады.

Сіз осы жерден сынап көре аласыз.


Сонымен, эмулятор дегеніміз не және ол бізге не үшін қажет? Телефонымыз үшін жүздеген бағдарламаларды немесе тақырыптарды жүктеп алатын жағдайлар бар, бірақ біз олардың ішінен бізге ең ұнайтынын таңдағымыз келеді. Дәл осындай жағдайларда телефон эмуляторы қолданбаларды (тақырыптарды) тексеру үшін қолданылады. Nokia, S40 платформасында салынған, бізге шұғыл қажет.

Сөйлеп тұрған қарапайым тілде, эмулятор- бұл біздің телефонымыздың интерфейсімен бірдей, тек компьютерде көрсетіледі. Бағдарлама оларды телефонға жүктеп алмай-ақ тексеруге мүмкіндік береді. Бұған қоса, ол 1.1 нұсқасынан бастап swf-ті көруге мүмкіндік береді. және одан жоғары, Nokia S40 ThemeStudio_2.2 (S40 3-ші шығарылым) тақырыптарын жасауға арналған бағдарламаның өзі көрмейді.

Эмулятор компьютерде толық жұмыс істеуі үшін сіз орналасқан jre-1_5_0_16-windows-i586-p бағдарламасын жүктеп алуыңыз керек.

Тікелей эмулятормен жұмыс істеу арқылы біз нені көре алатынымызды және тексеретінімізді егжей-тегжейлі қарастырайық. Бағдарламада дизайн тақырыбын ашу арқылы біз жаңа дизайндағы телефон интерфейсінің барлық элементтерін егжей-тегжейлі көре аламыз. Эмулятор тек негізгі (негізгі) дисплейді ғана емес, сонымен қатар барлық қойындылар мен дизайн элементтерін егжей-тегжейлі қарауға мүмкіндік береді.

Қажетті дизайн тақырыбын эмуляторға жүктеу үшін бағдарламаның негізгі панеліндегі қойындыны басыңыз. Файлжәне ашылмалы мәзірден қойындыны таңдаңыз Ашық .

Ескерту. Эмулятор дұрыс жұмыс істеуі үшін Nokia үшін тақырып атауы латын тілінде немесе сандармен көрсетілуі керек екенін ұмытпаңыз.

Эмуляторды forum.nokia сайтынан табуға болады, мұнда тек таңдау керек қажетті нұсқа. Мысалы, жаңа телефондар үшін Nokia Series 40 5th Edition SDK (47MB) таңдаңыз.

Ескерту: Қосымша құрамдастарды жүктеп алмас бұрын, сіздің S40 платформасының қай нұсқасы орнатылғанын тексеріңіз. Nokia телефоны.

Бағдарламаны тіркеу бағдарламаны тіркеумен бірдей Nokia S40 ThemeStudio_2.2(S40 3-ші басылым). Бұл қалай жасалатынын мақалада оқи аласыз.

Мен өмір бойы қарапайым телефондарды қолдандым, тек Nokia брендіне басымдық бердім. Бірақ өмір бір орнында тұрмайды, бір күні мен камерасы бар және интернетке қол жетімді телефон алғым келді - бұл өте ыңғайлы! Дүкенде ұялы байланыс модель ауқымы Nokia түймесіБұл үлкен емес еді, бірақ менің көзім бірден 301 Dual опциясына түсті. Маған оның қарапайым, бірақ талғампаз, қажетсіз тітіркендіргіш бөлшектері жоқ болғаны ұнайды. Бұл телефон жоспарда сыртқы түрімені 100% қанағаттандырды. Мен оны жақынырақ көруді өтіндім - маған бәрі ұнады. Сатып алу маған төрт мыңға түсті. Оған қоса, мен былғары қорап сатып алдым.

Телефон туралы менің екі әсерім бар. Алғашында үйреніп жүргенімде бәрі керемет көрінетін. Жақында мен ескі Oka-ны Renault Logan-ға айырбастадым, сондықтан салыстыру ұқсас болды. Маған телефондағы барлық нәрсенің ұсақ-түйекке дейін ойластырылғандығы қатты ұнады. Стильді және ыңғайлы. Сізге қажет нәрсе. Бірақ уақыт өте келе, әрине, кемшіліктер де пайда болды, бірақ бірінші кезекте.

Маған телефонның сыртқы түрі ұнайды. Стильді, ұқыпты, жұқа. Өте жақсы пластик. Телефонның өлшемі салыстырмалы түрде үлкен, бірақ ол қалтаңызға сәйкес келеді. Телефонның экраны үлкен, түстер тітіркендірмейді, реңктері жұмсақ және көзге ұнамды. Түймешіктер ыңғайлы, сонымен қатар олар уақыт өте келе тозбайды, бірақ олардың ісіну мүмкіндігі бар (менде ұқсас «қатты» пернетақтасы бар телефон болды, және ол үнемі пайдаланудан үнемі ісініп тұратын, деп үміттенемін бұл телефонмен болмайды). Телефонның полифониясы анық, бірақ салыстырмалы түрде тыныш. Көшеде, тіпті кейде үйде де мен оны естімеймін және әрқашан қоңырауларды жіберіп аламын. Бұл «жергілікті» сигналдарға да, жүктеп алынған музыкаға да қатысты. Бұл тітіркендіргіш. Бірақ музыка тыңдау үшін, мысалы, динамик өте қолайлы. Кейде үйде радионы қосып тыңдаймын динамик- жақсы магнитофон сияқты естіледі. Маған телефондағы мәзір өте ұнайды, бұл ыңғайлы, әртүрлі қолданбалар бар. Телефон кітапшасы керемет! Мұнда сіздің атыңыз бен тегіңіздің астында екі сан бар. Сіз контактіге көптеген сандарды, көптеген опцияларды қоса аласыз. Бірақ басты нәрсе жоқ, менің ойымша, әрбір телефонда болуы керек - қара тізім. Менің ұялы байланыс операторынөмірді блоктау қызметін қамтамасыз етпейді. Ұсынылғандай көріңіз білімді адамсәйкес қосымшаны табыңыз - бірақ бекер. Сондықтан мен нөмірімді ауыстырып, оны білетін адамдар тобына қатысты абай болу керек болды.

Интернет.... Бұл бөлек әңгіме. Өте қарабайыр. Егер сіз ыңғайлы сөйлесуге мүмкіндік беретін телефон іздесеңіз әлеуметтік желілер, компьютерді ұмытып - өтіп кетіңіз. Бұл телефоннан сіз тек жаңартуларды көре аласыз. Беттер жүктеліп жатқанда, сіз барлық тырнақтарыңызды шайнап аласыз. Мен үнемі ақауларға үйреніп қалдым: әрекеттер көбінесе ешқайда кетпейді. Бұл хабарламаларды, пікірлерді жіберуге және беттерді жүктеуге де қатысты (бірінші рет, әдетте, бәрі «бос» жұмыс істейді). Хабарламаларды жібермес бұрын мен әрқашан көшіріп аламын: егер әрекет жұмыс істемесе, бүкіл мәтін ағынды. Бір нәрсе жүз рет жіберіледі. Ал лайктарға келетін болсақ, бұл басқа әңгіме. Сонымен, арнаңызды қарап шыққанда, сізге ұнаған нәрсе сізге ұнайды және әрі қарай жылжыңыз, солай емес пе? Мұнда бәрі күрделі. Бірінші лайк әдетте беріледі, ал екіншісі сіздің жаңалықтар арнаңызды ең басына жібереді. Және үнемі! Соңғы кездері мен Android негізіндегі жаңа сенсорлы телефонды сатып алу туралы көбірек ойлана бастадым, өйткені бұл кемшіліктердің барлығы мені қатты тітіркендіре бастады: бұл көп уақыт пен жүйкені қажет етеді.

Телефон жиі істен шығады, мен оны Nokia-дан күтпеген едім. Ешқандай себепсіз экран аққа айналады және бүкіл жүйе қайта жүктеледі. Маған мәтінді тергенде күнде әріптер көрінбейтіндігі ұнамайды, камера ұнамайды... Әлбетте 3.2 емес! Максималды - 2 мегапиксель. Иә, және телефон сәл баяу жұмыс істейді, бірақ менің жадым бос дерлік (бір қоңырауға бір ән ғана жүктеледі). Опцияларға келетін болсақ, телефон ақылды болып көрінеді, бірақ ішінде мен түсінбейтін көптеген атаулар бар. Мысалы, «Қоңырау эмуляциясы» - бұл не?

Жалпы, көңілім қалды. Мен жақсырақ күттім. Маған дизайн ұнайды, қалғанының бәрі солай. Уақыт өте келе тағы біреуін сатып аламын. Мен телефонға орташа есеппен үш ұпай беремін, бірақ мен оны сатып алуға ұсынамын: баға мен сапа арақатынасы жеткілікті.

Сатып алғаннан кейін алты айдан кейін шолуымды жаңартамын.Бүгін 2015 жылдың 3 қаңтары. Мен телефонымды әлі де қолданамын, бірақ басында оны өзгертуге қатты ынталы болдым. Уақыт өте келе мен оған үйрендім, енді маған ұнайды және басқа ештеңе қаламайды. Интернетте жұмыс істеу үшін мен Opera браузерін орнаттым, қазір бәрі жақсы жұмыс істейді. Ал камера онша жаман емес болып шықты. Фотосуреттердің сапасы осы баға санатындағы басқа телефон үлгілерінен, тіпті кейбіреулерінен қымбатырақ болады деп айтар едім. Сіз оларды басып шығара аласыз және оларды әлеуметтік желілерде жариялауға ұялмаңыз. Жалғыз ескертетін жайт, қандай да бір себептермен ол сыртқа қарағанда үй ішінде жақсырақ фотосуреттер түсіреді. Уақыт өте келе түймелер ісінбеді, менде алаңдауға негіз болмады. Ал телефонның өзі «нарықтық» көрінісін жоғалтқан жоқ. Ара-тұра, бұрынғыдай, ол ақауларды ұстайды, бірақ жиі емес. Бірнеше рет телефон өздігінен өшіп қалды, мен оны ұзақ уақыт бойы қоса алмадым. Бұл немен байланысты екенін білмеймін. Менің жадым мүлде толы емес (мен оған фотосуреттер немесе музыка сақтамаймын, тек SMS және контактілер). Мен «үш» ұпайды «төрт» ұпайға ауыстырып жатырмын. Мұндай жаман телефон емес.

Шамамен алты ай бұрын маған мынадай сұрақ қойылды: «Мен пайдаланушы әрекетіне негізделген белгілі бір функцияны іске қосатын үлкен құрылымды қолданамын. Мен осы функцияның кодын өзгертпестен, осы функцияны шақырған жағдайда өз кодымды орындағым келеді. Тәжірибе ең жақсыдан алыс, функцияны шақыру оқиғасы жоқ, мен жай ғана саусағымды ғибадатханаға бұрып, бұл қорқынышты код екенін айттым, сіз мұны істемеуіңіз керек және бұл мүмкін емес.

Бір-екі күн бұрын, Одессаға тән емес салыстырмалы түрде жылы қыстың кешінде үйге бара жатқанда, менде әдеттегідей емес ой болды: «Егер мен Богданның алты ай бұрын айтқанын орындауға тырыссам ше?» Үйге келген соң компьютерді қостым да, бір-екі минуттың ішінде ойыма келгенді істедім. Ең алдымен, егер олар қайта анықталса, кірістірілген әдістер қалай әрекет ететіні және одан кейін олардың алдын ала анықтау алдындағы бұрынғы күйін қандай да бір жолмен шақыруға болатындығы мені қызықтырды. Егер нысан қайта анықталса, сол сыртқы түрін сақтай отырып, оған сілтемелер жойылмайтынын білдім. Кірістірілген функцияларға қатысты күмән болды. Бұл мүмкін екені белгілі болды.

Мүмкін, мен ешқашан мұндай құралды қолдануға тура келмейтін шығармын, бірақ таза гипотетикалық түрде, біреудің белгілі бір функцияға қоңырауды қадағалау, әрбір қоңырау туралы есеп алу міндеті болуы мүмкін, ол мыналардан тұрады:

  1. Орындау нәтижесі
  2. Аргументтер өтті
  3. Қоңырау контексі (қоңырау шалғанда бұл не)
  4. Өңдеуші жасалғаннан кейін функция шақыруларының саны
(Бұл тізім өңдеушіге берілген аргументтерге толығымен сәйкес келеді)

addCallListener = функция(функ, кері шақыру)( var callNumber = 0; қайтару функциясы())( var args = .slice.call(аргументтер); var нәтиже; көріңіз ( нәтиже = func.apply(бұл, аргументтер); callNumber++; ) catch (e) ( кері шақыру(e, args, this, callNumber); throw e; ) кері қоңырау (нәтиже, args, this, callNumber) )

Өте қарапайым және қысқа, солай ма?

Содан кейін біз кейбір функцияны келесідей қайта анықтаймыз:

SomeFunct = addCallListener(someFunct, функция(нәтиже, аргтар, self, callNumber)( //Бірдеңе жасаңыз )); // немесе Constructor.prototype.method = addCallListener(Constructor.prototype.method, функция(нәтиже, аргтар, self, callNumber)( //Бірдеңе жасаңыз ));

Әлбетте, ол кодтың орын алатын бөлігінде «көрінетін» болуы керек.

Кейбір мысалдар
Мысалдарды іске қосу үшін сізде ашық консоль болуы керек (Chrome жүйесінде оны Ctrl+Shift+i деп атаңыз).

Сын мен толықтырулар үшін javascript.ru форумындағы жолдастарға рахмет.

UPD
Мен функцияны сәл кеңейттім: енді бір кері шақырудың орнына екінші аргумент ретінде нысан жіберіледі

  1. алдында (функция іске қосылмай тұрып шақырылады)
  2. сәттілік (функция сәтті аяқталса деп аталады)
  3. қате (қате орын алса)
  4. кейін (кез келген жағдайда, табысқа қарамастан шақырылады)
Әрбір өңдегішке нысан беріледі
  1. өзін-өзі (контекст)
  2. аты (функция атауы)
  3. күй («қате» немесе «сәтті»)
  4. сәттілік саны (сәтті қоңыраулар саны)
  5. errorNumber (қате бар қоңыраулар саны)
  6. нәтиже (бар болса, нәтиже)
  7. қате (қате, бар болса)
Оған қоса, addCallListener функциясы енді терезеге немесе процеске соғылып қалмас үшін Функция конструктор нысанының бөлігі болып табылады.

Сіз осы жерден сынап көре аласыз.

Қарау