小编Cev*_*mcü的帖子

Python-读取所有消息后退出 Kafka 队列

我正在尝试使用 Python 读取 Kafka 队列的一些数据,如下面的代码所示:

from kafka import KafkaConsumer
import sys
import json 
import pandas as pd


bootstrap_servers = [localhost]
topicName = 'topic'
consumer = KafkaConsumer (topicName, group_id = 'topic',bootstrap_servers = bootstrap_servers, auto_offset_reset = 'earliest')

data_list = []
for message in consumer:
    print(message)
    data = json.loads(message.value)
    df = pd.json_normalize(data)
    data_list.append(df)
Run Code Online (Sandbox Code Playgroud)

这似乎永远在循环中运行,除非我终止连接。有没有办法在读取所有消息后或者队列中没有新消息后停止/退出此循环?

python apache-kafka kafka-consumer-api

5
推荐指数
1
解决办法
1141
查看次数

Swift:异步加载和显示照片

我正在努力解决从iPhone到iPhone显示图片库的问题collectionView

如果某人在画廊内有50张照片,则一切正常。问题是,当某人有数千张照片时,图库会加载10秒钟,这对我的应用程序不利。
当我从Facebook加载图像时,会发生相同的问题。该应用程序正在等待下载所有照片,然后显示出来。我想在加载过程中一张一张地显示图像,而不是等待它全部加载。

我知道我应该使用DispachQueue并且确实使用过,但是有一些我看不到的错误。
这是我用来从iPhone图库中获取图像的代码:

func grapPhotos() {
    let imgManager = PHImageManager.default()
    let requestOptions = PHImageRequestOptions()
    requestOptions.isSynchronous = true
    requestOptions.deliveryMode = .highQualityFormat
    let fetchOptions = PHFetchOptions()

    fetchOptions.sortDescriptors = [NSSortDescriptor(key: "creationDate", ascending: false)]

    if let fetchResulat : PHFetchResult = PHAsset.fetchAssets(with: .image, options: fetchOptions) {

        if fetchResulat.count > 0 {

            for i in 0..<fetchResulat.count {

                imgManager.requestImage(for: fetchResulat.object(at: i), targetSize: CGSize(width: 200, height:200), contentMode: PHImageContentMode.aspectFill, options: requestOptions, resultHandler: {
                    (image, eror) in

                    self.imageArray.append(image!)

                    DispatchQueue.main.async {
                        self.collectionView.reloadData()
                    }
                })
            } …
Run Code Online (Sandbox Code Playgroud)

ios uicollectionview swift

4
推荐指数
1
解决办法
572
查看次数

如何在Java中阅读BufferedReader的下一行?

我有一个文本文件.我想逐行阅读并将其转换为二维数组.我写了如下内容:

BufferedReader br = new BufferedReader (new FileReader ("num.txt"));
String line = br.readLine();

while( line != null) {                
    System.out.printf(line);  
}
Run Code Online (Sandbox Code Playgroud)

这变成了无限循环.在完成阅读和打印线之后,我想继续下一行.但我不知道该怎么做.

java readline bufferedreader

2
推荐指数
1
解决办法
4万
查看次数

创建字典数组 iOS Swift

我正在尝试实现一系列字典,但得到的输出与我的预期不同。

在下面的代码片段中,我创建了一个数组、一个字典并执行追加操作:

var MemberArray = [[String: Any]]()

let dict = ["member_status":"1", 
            "member_id": memid ,
            "membership_number": memshpid, 
            "name": memname, 
            "mobile":memno ,
            "billing":"1"] as NSDictionary

MemberArray.append(dict as! [String : Any])
Run Code Online (Sandbox Code Playgroud)

我需要它是这样的:

[
  {
"member_status": 1,
"member_id": 3,
"membership_number": "GI99010286",
"name": "Thomas",
"mobile": "9873684678",
"billing": 0
  },
  {
"member_status": 1,
"member_id": 5,
"membership_number": "GI99010144",
"name": "Raj",
"mobile": "9873684678",
"billing": 1
  }
]
Run Code Online (Sandbox Code Playgroud)

但我得到以下信息:

[
  [
"member_status": 1,
"member_id": 3,
"membership_number": "GI99010286",
"name": "Thomas",
"mobile": "9873684678",
"billing": 0
 ],
 [
"member_status": 1,
"member_id": 5, …
Run Code Online (Sandbox Code Playgroud)

arrays dictionary swift

-2
推荐指数
1
解决办法
2539
查看次数