Dismiss Notice

REGISTRATION IS AFTER ADMIN ACTIVATION

DONATIONS WITH PAYPAL CLICK TO BUTTON

1 MONTH VIP - 5$; 3 MONTHS VIP - 10$; 6 MONTHS VIP - 20$; 1 YEAR VIP - 30$; 2 YEARS VIP - 50$; GOLD USER FOR LIFE VIP - 150$

DONATIONS WITH Bitcoin Address:3NRs3CK3fhXifrNYxHEZKpETDd9vNLMsMD

Dismiss Notice
The registration is approved by the Administrator. It takes about 1 day to approve your registration
Dismiss Notice
For open hidden message no need write thanks, thank etc. Enough is click to like button on right side of thread.

Delphi XE5 threading problem on Android

Discussion in 'Delphi Android And IOS' started by AdminDF, Mar 5, 2014.

  1. AdminDF
    Online

    AdminDFAdminDF is a Verified Member DelphiFan Administrator Staff Member DF Staff

    When I tried to make a a simple game for Android using Delphi XE5, I encountered an problem using TBitmap in threads.  When ever I use TBitmap in thread it just causes the App to quit back to the Launcher screeen.  Delphi doesn’t catch any exceptions.

    In order to find out what the problem was, and to isolate the problem. I created a test project with 3 threads.

    loads a jpeg from file
    only creates 100×100 bitmap
    on top of (2), calls FillRect
    This is what test project UI look like. Each button calls each thread.

    [​IMG]

    This is the result from Logcat. I pressed buttons from bottom up (since I knew which one fails).  The result is very interesting.

    [​IMG]

    Thread 3: Thread executed from start to finish, but paint failed with “Cannot create render buffers from TContextAndroid” exception.

    Thread 2: No exceptions

    Thread 1: It caused the app to quit, it obviously failed. But looking at the log. I can see the thread actually ran from start to finish. There were no exceptions in the middle. Two exceptions were raised after the thread operation.


    “10-15 11:51:25.283: I/info(1159): FMX: Project5: [Context Exception]: Cannot create OpenGL context for ‘CreateDummyContext’.
    10-15 11:51:25.283: I/info(1159): FMX: Project5: [Context Exception]: Cannot create OpenGL context for ‘eglMakeCurrent’.”

     For anyone wants to investigate this problem further, or just to try it out, here is the source code. 
    Download Here
     

Share This Page

Laws
Our website, law, laws, copyright and aims to be respectful of individual rights. Our site, as defined in the law of 5651 serves as a provider of space. According to the law, contrary to the law of site management has no obligation to monitor content. Therefore, our site has adopted the principle of fit and remove. Works are subject to copyright laws and is shared in a manner that violated their legal rights, or professional associations, rights holders who, adsdelphi@gmail.com I can reach us at e-mail address. Complaints considered to be infringing on the examination of the content will be removed from our site.
Donate Help To Us and Be VIP
DONATIONS WITH PAYPAL CLICK TO BUTTON
6 MONTHS VIP - 20$; 1 YEAR VIP - 30$; 2 YEARS VIP - 50$; GOLD USER FOR LIFE VIP - 150$
Social Block