小编det*_*ail的帖子

TJson.JsonToObject <T>在多线程环境中抛出错误

当使用TJson.JsonToObject在多线程环境中随机访问冲突发生.我在很长一段时间内都在寻找这个问题,我可以用下面的代码来隔离它

JSON类

type
   TParameter = class
   public
      FName     : string;
      FDataType : string;
      FValue    : string;
   end;
Run Code Online (Sandbox Code Playgroud)

Testfunction:

procedure Test();
var
   myTasks: array of ITask;
   i : integer;
   max : integer;
begin

  max := 50;
  SetLength(myTasks, max);
  for i := 0 to max  -1  do begin
     myTasks[i] := TTask.Create(procedure ()
       var
          json : string;
          p : TParameter;
       begin
          json := '{"name":"NameOfParam","dataType":"TypeOfParam","value":"ValueOfParam"}';
          p := TJson.JsonToObject<TParameter>(json);
          p.Free;
       end);
     myTasks[i].Start;
  end;

  TTask.WaitForAll(myTasks);
  ShowMessage('all done!');
end;
Run Code Online (Sandbox Code Playgroud)

它只是一个基于更复杂源代码的代码片段.只要我在单个线程中使用此代码,一切都可以正常运行.我想知道代码是否有任何问题.

delphi rest multithreading json delphi-xe7

15
推荐指数
1
解决办法
1087
查看次数

Firemonkey安卓NFC适配器

我是Firemonkey和Android的新手,我不知道我的方法是否错误.我希望有一个应用程序运行并读取NFC标签.

有没有办法在带有firemonkey的Android设备中使用NFC阅读器?

使用FMXExpress的NFCAdapter的一部分(http://www.fmxexpress.com/full-android-sdk-interface-files-in-object-pascal-for-firemonkey/),我可以确定该设备是否具有NFC读卡器如果它已启用.但是要使用所有函数,我必须手动定义所有接口并解决所有循环引用.我不认为这可以导致一个探针解决方案.

我正面临着构建我自己的JavaClass以与nfc适配器通信的解决方案,如本博客文章所述:http://blong.com/Articles/DelphiXE5AndroidActivityResult/ActivityResult.htm#Building

delphi android nfc firemonkey delphi-xe6

11
推荐指数
1
解决办法
4091
查看次数

UI5 XML视图与JSON视图分组列表

我们在sUIUI5探索的演示中使用openUI5中的JSON视图,他们将这个xml视图用于他们的分组列表

<mvc:View
controllerName="sap.m.sample.ListGrouping.List"
xmlns:l="sap.ui.layout"
xmlns:mvc="sap.ui.core.mvc"
xmlns="sap.m">
<List
    items="{
        path: '/ProductCollection',
        sorter: {
            path: 'SupplierName',
            descending: false,
            group: true
        },
        groupHeaderFactory: '.getGroupHeader'
    }"
    headerText="Products" >
    <StandardListItem
        title="{Name}"
        description="{ProductId}"
        icon="{ProductPicUrl}"
        iconDensityAware="false"
        iconInset="false" />
</List>
</mvc:View>
Run Code Online (Sandbox Code Playgroud)

我们将其翻译为此json视图,但忽略了分拣机和标题工厂.项目按预期显示

{
   "Type": "sap.ui.core.mvc.JSONView",
   "controllerName": "company.controller.XY",
   "content": [
       {
           "Type" : "sap.m.List",
           "height" : "100%",       
           "items" : {
               "path" : "/ProductCollection", 
               "sorter" : {
                   "path" : "SupplierName",
                   "descending" : false,
                   "group" : true
               },
               "groupHeaderFactory" : ".getGroupHeader",        
               "template" : {
                   "Type" : "sap.m.StandardListItem",
                   "title" : "{Name}",
                   "description" …
Run Code Online (Sandbox Code Playgroud)

xml json sapui5

9
推荐指数
1
解决办法
728
查看次数

标签 统计

delphi ×2

json ×2

android ×1

delphi-xe6 ×1

delphi-xe7 ×1

firemonkey ×1

multithreading ×1

nfc ×1

rest ×1

sapui5 ×1

xml ×1